File nimblackout_cdcb61a30a7792894fa45c1f0889c58ec8799e5c06ad9690f7fc38be12dea221.exe
Function:
    0042af40
    0042af40wcsrtombs:
    0042af40push r14
    0042af42push r13
    0042af44push r12
    0042af46push rbp
    0042af47push rdi
    0042af48push rsi
    0042af49push rbx
    0042af4asub rsp, 48
    0042af4exor r14l, r14l
    0042af51mov r12, rdx
    0042af54mov rbx, rcx
    0042af57mov rbp, r8
    0042af5acall ___lc_codepage_func
    0042af5fmov edi, eax
    0042af61call ___mb_cur_max_func
    0042af66mov rsi, [r12]
    0042af6amov r13l, eax
    0042af6dtest rsi, rsi
    0042af70je 0x42afbf
    0042af72test rbx, rbx
    0042af75je 0x42afd8
    0042af77test rbp, rbp
    0042af7ajne 0x42afa3
    0042af7cjmp 0x42b010
    0042af81
    0042af81 0f 1f 80 00 00 00 00 .......
    0042af88
    0042af88loc_42af88:
    0042af88cdqe
    0042af8aadd rbx, rax
    0042af8dadd r14, rax
    0042af90cmp [rbx-1], 0
    0042af94je 0x42b020
    0042af9aadd rsi, 2
    0042af9ecmp rbp, r14
    0042afa1jbe 0x42b010
    0042afa3
    0042afa3loc_42afa3:
    0042afa3movzx edx, [rsi]
    0042afa6mov r9l, r13l
    0042afa9mov r8l, edi
    0042afacmov rcx, rbx
    0042afafcall __wcrtomb_cp
    0042afb4test eax, eax
    0042afb6jg 0x42af88
    0042afb8
    0042afb8loc_42afb8:
    0042afb8mov r14, -1
    0042afbf
    0042afbfloc_42afbf:
    0042afbfmov rax, r14
    0042afc2add rsp, 48
    0042afc6pop rbx
    0042afc7pop rsi
    0042afc8pop rdi
    0042afc9pop rbp
    0042afcapop r12
    0042afccpop r13
    0042afcepop r14
    0042afd0ret
    0042afd1
    0042afd1 0f 1f 80 00 00 00 00 .......
    0042afd8
    0042afd8loc_42afd8:
    0042afd8lea rbp, [rsp+43]
    0042afddjmp 0x42aff6
    0042afdf
    0042afdf 90 .
    0042afe0
    0042afe0loc_42afe0:
    0042afe0movsxd rdx, eax
    0042afe3sub eax, 1
    0042afe6cdqe
    0042afe8add r14, rdx
    0042afebcmp [rsp+rax+43], 0
    0042aff0je 0x42b030
    0042aff2add rsi, 2
    0042aff6
    0042aff6loc_42aff6:
    0042aff6movzx edx, [rsi]
    0042aff9mov r9l, r13l
    0042affcmov r8l, edi
    0042afffmov rcx, rbp
    0042b002call __wcrtomb_cp
    0042b007test eax, eax
    0042b009jg 0x42afe0
    0042b00bjmp 0x42afb8
    0042b00d
    0042b00d 0f 1f 00 ...
    0042b010
    0042b010loc_42b010:
    0042b010mov [r12], rsi
    0042b014jmp 0x42afbf
    0042b016
    0042b016 66 2e 0f 1f 84 00 00 00 00 00 f.........
    0042b020
    0042b020loc_42b020:
    0042b020mov [r12], 0
    0042b028sub r14, 1
    0042b02cjmp 0x42afbf
    0042b02e
    0042b02e 66 90 f.
    0042b030
    0042b030loc_42b030:
    0042b030sub r14, 1
    0042b034jmp 0x42afbf
    0042af40
    0042b036
    0042b036 // align 0x10
    0042b040
    0042b040__acrt_iob_func:
    0042b040push rbx
    0042b041sub rsp, 32
    0042b045mov ebx, ecx
    0042b047call __iob_func
    0042b04cmov ecx, ebx
    0042b04elea rdx, [rcx+2*rcx]
    0042b052shl rdx, 4
    0042b056add rax, rdx
    0042b059add rsp, 32
    0042b05dpop rbx
    0042b05eret
    0042b040
    0042b05f
    0042b05f // align 0x10
    0042b060
    0042b060_get_invalid_parameter_handler:
    0042b060mov rax, [rip+0x1de29]
    0042b067ret
    0042b060
    0042b068
    0042b068 // align 0x10
    0042b070
    0042b070_set_invalid_parameter_handler:
    0042b070mov rax, rcx
    0042b073xchg [rip+0x1de16], rax
    0042b07aret
    0042b070
    0042b07b
    0042b07b // align 0x10
    0042b080
    0042b080_lock_file:
    0042b080push rbx
    0042b081sub rsp, 32
    0042b085mov rbx, rcx
    0042b088xor ecx, ecx
    0042b08acall __acrt_iob_func
    0042b08fcmp rbx, rax
    0042b092jb 0x42b0a3
    0042b094mov ecx, 19
    0042b099call __acrt_iob_func
    0042b09ecmp rbx, rax
    0042b0a1jbe 0x42b0b8
    0042b0a3
    0042b0a3loc_42b0a3:
    0042b0a3lea rcx, [rbx+48]
    0042b0a7add rsp, 32
    0042b0abpop rbx
    0042b0acjmp [rip+0x1e181]
    0042b0b3nop [rax+rax]
    0042b0b8
    0042b0b8loc_42b0b8:
    0042b0b8xor ecx, ecx
    0042b0bacall __acrt_iob_func
    0042b0bfmov r8, rax
    0042b0c2mov rax, rbx
    0042b0c5sub rax, r8
    0042b0c8sar rax, 4
    0042b0ccimul eax, eax, 0xffffffffaaaaaaab
    0042b0d2lea ecx, [rax+16]
    0042b0d5call _lock
    0042b0daor [rbx+24], 32768
    0042b0e1add rsp, 32
    0042b0e5pop rbx
    0042b0e6ret
    0042b080
    0042b0e7
    0042b0e7 // align 0x10
    0042b0f0
    0042b0f0_unlock_file:
    0042b0f0push rbx
    0042b0f1sub rsp, 32
    0042b0f5mov rbx, rcx
    0042b0f8xor ecx, ecx
    0042b0facall __acrt_iob_func
    0042b0ffcmp rbx, rax
    0042b102jb 0x42b113
    0042b104mov ecx, 19
    0042b109call __acrt_iob_func
    0042b10ecmp rbx, rax
    0042b111jbe 0x42b128
    0042b113
    0042b113loc_42b113:
    0042b113lea rcx, [rbx+48]
    0042b117add rsp, 32
    0042b11bpop rbx
    0042b11cjmp [rip+0x1e141]
    0042b123nop [rax+rax]
    0042b128
    0042b128loc_42b128:
    0042b128and [rbx+24], -32769
    0042b12fxor ecx, ecx
    0042b131call __acrt_iob_func
    0042b136sub rbx, rax
    0042b139sar rbx, 4
    0042b13dimul ebx, ebx, 0xffffffffaaaaaaab
    0042b143lea ecx, [rbx+16]
    0042b146add rsp, 32
    0042b14apop rbx
    0042b14bjmp 0x42b180
    0042b0f0
    0042b150
    0042b150__p__acmdln:
    0042b150mov rax, [rip+24297]
    0042b157mov rax, [rax]
    0042b15aret
    0042b150
    0042b15b
    0042b15b // align 0x10
    0042b160
    0042b160__p__commode:
    0042b160mov rax, [rip+24297]
    0042b167mov rax, [rax]
    0042b16aret
    0042b160
    0042b16b
    0042b16b // align 0x10
    0042b170
    0042b170__p__fmode:
    0042b170mov rax, [rip+24297]
    0042b177mov rax, [rax]
    0042b17aret
    0042b170
    0042b17b
    0042b17b // align 0x10
    0042b180
    0042b180_unlock:
    0042b180jmp [rip+0x1e1e6]
    0042b180
    0042b186
    0042b186 90 90 ..
    0042b188
    0042b188_lock:
    0042b188jmp [rip+0x1e1be]
    0042b188
    0042b18e
    0042b18e // align 0x10
    0042b190
    0042b190__iob_func:
    0042b190jmp [rip+0x1e156]
    0042b190
    0042b196
    0042b196 90 90 ..
    0042b198
    0042b198___mb_cur_max_func:
    0042b198jmp [rip+0x1e136]
    0042b198
    0042b19e
    0042b19e // align 0x10
    0042b1a0
    0042b1a0___lc_codepage_func:
    0042b1a0jmp [rip+0x1e126]
    0042b1a0
    0042b1a6
    0042b1a6 // align 0x10
    0042b1b0
    0042b1b0WideCharToMultiByte:
    0042b1b0jmp [rip+0x1e0fe]
    0042b1b0
    0042b1b6
    0042b1b6 90 90 ..
    0042b1b8
    0042b1b8VirtualQuery:
    0042b1b8jmp [rip+0x1e0ee]
    0042b1b8
    0042b1be
    0042b1be // align 0x10
    0042b1c0
    0042b1c0VirtualProtect:
    0042b1c0jmp [rip+0x1e0de]
    0042b1c0
    0042b1c6
    0042b1c6 90 90 ..
    0042b1c8
    0042b1c8VirtualFree:
    0042b1c8jmp [rip+0x1e0ce]
    0042b1c8
    0042b1ce
    0042b1ce // align 0x10
    0042b1d0
    0042b1d0VirtualAlloc:
    0042b1d0jmp [rip+0x1e0be]
    0042b1d0
    0042b1d6
    0042b1d6 90 90 ..
    0042b1d8
    0042b1d8TlsGetValue:
    0042b1d8jmp [rip+0x1e0ae]
    0042b1d8
    0042b1de
    0042b1de // align 0x10
    0042b1e0
    0042b1e0Sleep:
    0042b1e0jmp [rip+0x1e09e]
    0042b1e0
    0042b1e6
    0042b1e6 90 90 ..
    0042b1e8
    0042b1e8SetUnhandledExceptionFilter:
    0042b1e8jmp [rip+0x1e08e]
    0042b1e8
    0042b1ee
    0042b1ee // align 0x10
    0042b1f0
    0042b1f0MultiByteToWideChar:
    0042b1f0jmp [rip+0x1e07e]
    0042b1f0
    0042b1f6
    0042b1f6 90 90 ..
    0042b1f8
    0042b1f8LoadLibraryA:
    0042b1f8jmp [rip+0x1e06e]
    0042b1f8
    0042b1fe
    0042b1fe // align 0x10
    0042b200
    0042b200LeaveCriticalSection:
    0042b200jmp [rip+0x1e05e]
    0042b200
    0042b206
    0042b206 90 90 ..
    0042b208
    0042b208IsDBCSLeadByteEx:
    0042b208jmp [rip+0x1e04e]
    0042b208
    0042b20e
    0042b20e // align 0x10
    0042b210
    0042b210InitializeCriticalSection:
    0042b210jmp [rip+0x1e03e]
    0042b210
    0042b216
    0042b216 90 90 ..
    0042b218
    0042b218GetStartupInfoA:
    0042b218jmp [rip+0x1e02e]
    0042b218
    0042b21e
    0042b21e // align 0x10
    0042b220
    0042b220GetProcAddress:
    0042b220jmp [rip+0x1e01e]
    0042b220
    0042b226
    0042b226 90 90 ..
    0042b228
    0042b228GetLastError:
    0042b228jmp [rip+0x1e00e]
    0042b228
    0042b22e
    0042b22e // align 0x10
    0042b230
    0042b230EnterCriticalSection:
    0042b230jmp [rip+0x1dffe]
    0042b230
    0042b236
    0042b236 90 90 ..
    0042b238
    0042b238DeleteCriticalSection:
    0042b238jmp [rip+0x1dfee]
    0042b238
    0042b23e
    0042b23e // align 0x10
    0042b240
    0042b240register_frame_ctor:
    0042b240jmp 0x401520
    0042b240
    0042b245
    0042b245 // align 0x10
    0042b250
    0042b250 ff ff ff ff ff ff ff ff ........
    0042b258
    0042b258fn_42b258:
    0042b258mov dl, 66
    0042b25badd [rax], al
    0042b25dadd [rax], al
    0042b25fadd [rax], al
    0042b261add [rax], al
    0042b263add [rax], al
    0042b265add [rax], al
    0042b258
    0042b267
    0042b267 00 ff ff ff ff ff ff ff ff .........
    0042b270 00 00 00 00 00 00 00 00 ........
    0042c000
    0042c000 uint32_t g_42c000 ← __tmainCRTStartup
    0042c000 dd 0x0000000a
    0042c004
    0042c004 00 00 00 00 00 00 00 00 00 00 00 00 ............
    0042c010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c020
    0042c020 uint8_t g_42c020 ← copyStringRC1 rawNewString rawNewStringNoInit
    0042c020 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c030 1c 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c060 b9 07 a2 25 f3 dd 60 46 8e e9 76 e5 8c 74 06 3e ...%..`F..v..t.>
    0042c070 f1 7d 36 b5 ac cb cf 11 95 ca 00 80 5f 48 a1 92 .}6........._H..
    0042c080 f2 7d 36 b5 ac cb cf 11 95 ca 00 80 5f 48 a1 92 .}6........._H..
    0042c090
    0042c090 uint64_t g_42c090 ← __do_global_dtors
    0042c090 dq 0x000000000042b270
    0042c098
    0042c098 00 00 00 00 00 00 00 00 ........
    0042c0a0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 ................
    0042c0b0 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c0c0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c0d0 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c0e0
    0042c0e0 uint8_t g_42c0e0 ← __pformat_cvt
    0042c0e0 40 00 00 00 c3 bf ff ff c0 3f 00 00 01 00 00 00 @........?......
    0042c0f0 00 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 ................
    0042c100
    0042c100 uint64_t g_42c100 ← __Balloc_D2A __i2b_D2A
    0042c100 dq 0x00000000004484c0
    0042c108
    0042c108 00 00 00 00 00 00 00 00 ........
    0042c110
    0042c110 uint64_t g_42c110 ← echoBinSafe atmdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus1dot6dot8atslibatssystematsiodotnim_Init000 printf raiseOutOfMem__system_3774 writeToStdErr__system_2533 nimRegisterThreadLocalMarker nimLoadLibraryError procAddrError nimRegisterGlobalMarker
    0042c110 dq 0x000000000042b040
    0042c118
    0042c118 00 00 00 00 ....
    0042c11c
    0042c11c SwitchTable
    0042c11c 0x42b060 0x42b070 0x42b0f0 0x42b080 0x42b150
    0042c144
    0042c144 00 00 00 00 00 00 00 00 00 00 00 00 ............
    0042c150 60 b1 42 00 00 00 00 00 00 00 00 00 00 00 00 00 `.B.............
    0042c160 70 b1 42 00 00 00 00 00 00 00 00 00 00 00 00 00 p.B.............