Function at 0x40c200
Capabilities:
Accept command line arguments
Check mutex on windows
Create process on windows
Delete registry value
Hide graphical window
Move file
Query or enumerate registry value
Set registry value

Disassembly:
sub esp, 0xb48
push ebx
push ebp
push esi
call fcn.0040b870
push str.test.txt
call fcn.00554ec6
push str.c:comsik.txt
call fcn.00554ec6
push str.GunBound.INI
call fcn.00554ec6
mov ecx, dword [0x5e5760]
add esp, 0xc
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x1b9
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e56b0]
push 1
lea edx, [esp + 0x10]
push edx
xor ebp, ebp
push eax
mov dword [esp + 0x18], ebp
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e56b8]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 2
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e56c0]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 4
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e56c8]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 5
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e56d0]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 8
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e56d8]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0xa
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e56e0]
push 1
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], 0xf
push eax
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e56e8]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x14
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e56f0]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x19
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e56f8]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x1e
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e5700]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x32
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e5708]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x46
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e5710]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x4b
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e5718]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x50
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e5720]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x62
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e5728]
push 1
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], 0x64
push eax
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e5730]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0xa0
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e5738]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0xc8
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov eax, dword [0x5e5740]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x100
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov edx, dword [0x5e5748]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x168
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
mov ecx, dword [0x5e5750]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x3e8
call fcn.004ce8c0
mov esi, eax
call fcn.0040aeb0
push str.SoftnyxGunBound.gme
push 1
push ebp
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
sete bl
cmp esi, ebp
je 0x40c53b
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test bl, bl
jne 0x40d66b
call fcn.00535150
push 0x8158
call fcn.0054bf29
add esp, 4
cmp eax, ebp
je 0x40c567
push 0x888ba8
push ebp
push eax
call fcn.004485d0
jmp 0x40c569
xor eax, eax
push edi
mov edi, eax
mov dword [0x886d08], eax
mov dword [0x887ac4], eax
call fcn.00448860
push 0x8158
call fcn.0054bf29
add esp, 4
cmp eax, ebp
je 0x40c59b
push 0x888ba8
push 1
push eax
call fcn.004485d0
jmp 0x40c59d
xor eax, eax
mov edi, eax
mov dword [0x886d0c], eax
mov dword [0x887ac0], eax
call fcn.00448860
push 0x8158
call fcn.0054bf29
add esp, 4
cmp eax, ebp
je 0x40c5ce
push 0x888ba8
push 2
push eax
call fcn.004485d0
jmp 0x40c5d0
xor eax, eax
mov edi, eax
mov dword [0x886d10], eax
mov dword [0x887ac8], eax
call fcn.00448860
push 0x200c
call fcn.0054bf29
add esp, 4
cmp eax, ebp
je 0x40c602
push 0x888ba8
push 3
mov edi, eax
call fcn.00408060
jmp 0x40c604
xor eax, eax
mov dword [0x887acc], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
push eax
call fcn.00554f5f
mov esi, dword [sym.imp.KERNEL32.dll_GetCommandLineA]
add esp, 4
call esi
push eax
push str.TID_s_n
call fcn.004d2e60
add esp, 8
call esi
push str.None_Debug_Mode_n
call fcn.004d2e60
push str.None_RAS_Mode_n
call fcn.004d2e60
mov ecx, eax
add esp, 8
lea esi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x40c650
sub ecx, esi
cmp ecx, 0x60
jne 0x40d66a
xor esi, esi
mov edi, eax
jmp 0x40c670
lea edx, [esi + 0x8876f0]
push edx
push str._02x
push edi
call fcn.00554e0a
add esp, 0xc
inc esi
add edi, 2
cmp esi, 0x30
jl 0x40c670
push str.Create_Window_n
call fcn.004d2e60
mov eax, dword [esp + 0xb64]
mov edi, dword [esp + 0xb60]
add esp, 4
cmp eax, ebp
jne 0x40c6f8
push 0x7f00
push ebp
mov dword [esp + 0x2c], 0xb
mov dword [esp + 0x30], 0x40e9b0
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], ebp
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x24]
push eax
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], 0x5862e4
call dword [sym.imp.USER32.dll_RegisterClassA]
push 0
push edi
push 0
push 0
push 1
push 1
push 0
push 0
push 0x86000000
push 0x5862d8
push 0x5862e4
push 8
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ebp, eax
push ebp
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push ebp
call dword [sym.imp.USER32.dll_SetFocus]
cmp dword [0x8876a0], 1
mov dword [0x887af0], ebp
mov dword [0x887af4], edi
mov dword [0x59e970], 0
jne 0x40c83b
push ebp
call dword [sym.imp.USER32.dll_GetDC]
mov ebx, eax
push 0x74
push ebx
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov ecx, eax
call fcn.0040b680
test eax, eax
mov dword [0x59e970], eax
jne 0x40c833
call fcn.0040a690
push 0x10
mov ecx, 0x258
mov edx, 0x320
mov esi, eax
call fcn.0040a4e0
add esp, 4
mov ecx, eax
call fcn.0040b680
cmp eax, esi
mov dword [esp + 0x18], eax
jae 0x40c833
lea ecx, [esp + 0x14]
push ecx
push 0xf003f
push 0
push str.SoftwareSoftnyxGunBoundWC
push reloc.WS2_32.dll_bind
mov dword [esp + 0x24], 4
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40c814
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push esi
lea eax, [esp + 0x24]
push eax
push 0
push str.Template
push ecx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x40c814
mov eax, dword [esp + 0x14]
push 4
lea edx, [esp + 0x1c]
push edx
push 4
push 0
push str.Template
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, esi
call fcn.0040b680
push eax
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a5c0
add esp, 4
push ebx
push ebp
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [esp + 0xb68]
push edx
push ebp
call dword [sym.imp.USER32.dll_ShowWindow]
push ebp
call dword [sym.imp.USER32.dll_UpdateWindow]
push 0
call dword [sym.imp.USER32.dll_ShowCursor]
call fcn.004bcde0
call fcn.00417520
push 0x887b00
mov ecx, 0x88a3b0
call fcn.00537260
test al, al
jne 0x40c883
push str.MD5___GME_NOT_FOUND_ERROR_
call fcn.004bcf00
add esp, 4
push 0x88a3dc
call fcn.004473e0
mov eax, dword [0x887734]
test eax, eax
mov ebx, dword [sym.imp.USER32.dll_MessageBoxA]
je 0x40c900
push 0x885e80
lea ebx, [eax + 0x77bc0]
call fcn.0044c6c0
test al, al
je 0x40c8d3
push 0xf4240
push 0x88a3dc
call fcn.004475f0
mov ecx, dword [0x887734]
add ecx, 0x77bc0
push ecx
call fcn.0044c790
jmp 0x40c8e6
push 0
push str.error
push str.Can_not_find_EventWord.dat_file
push ebp
call dword [sym.imp.USER32.dll_MessageBoxA]
lea edx, [esp + 0x184]
push edx
lea esi, [esp + 0x50]
call fcn.0040b750
mov ebx, dword [sym.imp.USER32.dll_MessageBoxA]
add esp, 4
call fcn.0054c050
mov esi, eax
cmp esi, 0x755
jne 0x40d10e
push edi
mov ebx, ebp
call fcn.0040d8d0
push eax
push str.InitEvangelion_returns__d_n
mov dword [esp + 0x1c], eax
call fcn.004d2e60
add esp, 0xc
test eax, eax
jne 0x40c9e7
mov eax, dword [0x887734]
add eax, 0x19eed
push eax
lea esi, [esp + 0x50]
call fcn.0040b750
push str._n1_n_n
call fcn.004d2e60
add esp, 8
push ebp
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [0x887acc]
mov esi, dword [eax + 0x2004]
push 0x20a3
mov edi, str.localhost
mov ebx, eax
call fcn.00451890
mov byte [ebx + 0x2008], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x887ab4], eax
mov eax, 6
call fcn.00413b20
mov esi, dword [sym.imp.USER32.dll_PeekMessageA]
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
mov ebx, dword [sym.imp.USER32.dll_TranslateMessage]
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x74]
push ecx
call esi
test eax, eax
je 0x40cbc3
push 0
push 0
push 0
lea edx, [esp + 0x70]
push edx
call edi
test eax, eax
je 0x40caca
lea eax, [esp + 0x64]
push eax
call ebx
lea ecx, [esp + 0x64]
push ecx
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x40c9a7
cmp eax, 0x17
jne 0x40caca
lea ecx, [esp + 0x14]
push ecx
push 0xf003f
push 0
push str.SoftwareSoftnyxGunBoundWC
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40ca74
lea edx, [esp + 0x18]
push edx
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x28]
push ecx
push 0
push str.Template
push edx
mov dword [esp + 0x30], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40ca69
mov eax, dword [esp + 0x1c]
push eax
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a5c0
mov ecx, dword [esp + 0x18]
add esp, 4
push str.Template
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov edx, dword [esp + 0x14]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
mov ebx, ebp
call fcn.0040d8d0
add esp, 4
test eax, eax
jne 0x40caca
push str._n2_n_n
call fcn.004d2e60
mov eax, dword [0x887734]
add eax, 0x19eed
push eax
lea esi, [esp + 0x54]
call fcn.0040b750
add esp, 8
push ebp
call dword [sym.imp.USER32.dll_SetFocus]
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x887ab4], eax
mov eax, 6
call fcn.00413b20
mov dword [0x8876a0], 0
mov eax, dword [0x59e970]
test eax, eax
jne 0x40cb5b
lea edx, [esp + 0x14]
push edx
push 0xf003f
push 0
push str.SoftwareSoftnyxGunBoundWC
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40cb5b
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x28]
push edx
push 0
push str.Template
push eax
mov dword [esp + 0x34], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40cb50
mov ecx, dword [esp + 0x18]
push ecx
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a5c0
mov edx, dword [esp + 0x18]
add esp, 4
push str.Template
push edx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov eax, dword [esp + 0x14]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push str.Unininting_Evangelion_n
call fcn.004d2e60
mov esi, dword [esp + 0x14]
test esi, esi
sete cl
push ecx
call fcn.0040e350
push str.Show_Cursor_n
call fcn.004d2e60
add esp, 0xc
push 1
call dword [sym.imp.USER32.dll_ShowCursor]
push 0
push ebp
call dword [sym.imp.USER32.dll_ShowWindow]
cmp byte [0x887aee], 1
je 0x40d012
test esi, esi
je 0x40d012
lea eax, [esi - 0xd]
cmp eax, 0xda
ja case.0x40cbbc.14
movzx edx, byte [eax + 0x40d6b8]
jmp dword [edx*4 + 0x40d67c]
call fcn.004149f0
jmp 0x40c9a7
mov ecx, dword [0x887734]
add ecx, 0x2932c
call fcn.0042e300
push eax
mov ecx, 0x5e575c
call fcn.0042e300
push eax
push 0x12d
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a4]
push eax
call fcn.00553270
add esp, 0x10
push 0
push 0x13b
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
push 0x885e80
push 0x12e
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
push 0x13b
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
mov ecx, dword [0x887734]
mov edx, dword [ecx + 0x2c5c4]
push edx
mov ecx, 0x5e575c
call fcn.0042e300
push eax
push 0x12f
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a4]
push eax
call fcn.00553270
add esp, 0x10
push 0
push 0x13b
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
push 0x885e80
push 0x130
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
push 0x13b
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
mov ecx, dword [0x887734]
push 0x63
push ecx
call fcn.00423fc0
push eax
mov ecx, 0x5e575c
call fcn.0042e300
push eax
push 0x131
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a4]
push edx
call fcn.00553270
add esp, 0x10
jmp 0x40cc56
push 0x885e80
push 0x132
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
call fcn.00553270
add esp, 0xc
push 0
push 0x13b
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
push 0x885e80
push 0x142
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00553270
add esp, 0xc
jmp 0x40cc0a
mov edx, dword [0x887a98]
push 0x885e80
push edx
mov ecx, 0x5e5754
call fcn.0042e300
push eax
push 0x133
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a8]
push eax
call fcn.00553270
add esp, 0x14
jmp 0x40cc0a
mov edx, dword [0x887a98]
push 0x885e80
push edx
mov ecx, 0x5e5754
call fcn.0042e300
push eax
push 0x134
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a8]
push eax
call fcn.00553270
add esp, 0x14
jmp 0x40cc0a
push 0
push 0x13d
push 0x88a3dc
call fcn.004475f0
push eax
push 0x135
jmp 0x40cf42
mov edx, dword [esp + 0x10]
xor eax, eax
mov byte [esp + 0x598], 0
mov ecx, 0x1f
lea edi, [esp + 0x599]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push edx
stosb byte es:[edi], al
lea eax, [esp + 0x59c]
push str.Language.GetMessage_317___d
push eax
call fcn.00553270
add esp, 0xc
push 0
lea ecx, [esp + 0x59c]
push ecx
push 0x136
push 0x88a3dc
call fcn.004475f0
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x13e
jmp 0x40cffa
push 0
push 0x13d
push 0x88a3dc
call fcn.004475f0
push eax
push 0x137
push 0x88a3dc
call fcn.004475f0
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x13f
jmp 0x40cffa
push 0
push 0x13d
push 0x88a3dc
call fcn.004475f0
push eax
push pe_nt_image_headers32
jmp 0x40cf42
push 0
push 0x13d
push 0x88a3dc
call fcn.004475f0
push eax
push 0x139
push 0x88a3dc
call fcn.004475f0
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
test esi, 0x8000
je 0x40cfac
and esi, 0x7fff
push esi
push 0x143
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x19c]
push eax
push 0x144
push 0x88a3dc
call fcn.004475f0
push eax
push ebp
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d012
push esi
push 0x13a
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
call fcn.00553270
add esp, 0xc
push 0
push 0x13d
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x140
push 0x88a3dc
call fcn.004475f0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
xor eax, eax
jmp 0x40d020
mov cl, byte [eax + 0x885e80]
mov byte [esp + eax + 0x758], cl
inc eax
test cl, cl
jne 0x40d020
lea edi, [esp + 0x758]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40d040
mov eax, dword [str.gunbound.ex_]
mov ecx, dword [0x586200]
mov edx, dword [0x586204]
mov dword [edi], eax
mov al, byte [0x586208]
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
lea ecx, [esp + 0x618]
push ecx
lea edx, [esp + 0x75c]
push edx
mov byte [edi + 0xc], al
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
je 0x40d66a
xor eax, eax
lea ebx, [ebx]
mov cl, byte [eax + 0x885e80]
mov byte [esp + eax + 0x198], cl
inc eax
test cl, cl
jne 0x40d090
lea edi, [esp + 0x198]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40d0b0
mov eax, dword [str.gunbound.exe]
mov ecx, dword [0x5861f0]
mov edx, dword [0x5861f4]
mov dword [edi], eax
mov al, byte [0x5861f8]
mov dword [edi + 4], ecx
lea ecx, [esp + 0x198]
mov dword [edi + 8], edx
push ecx
mov byte [edi + 0xc], al
call fcn.00554ec6
add esp, 4
lea edx, [esp + 0x198]
push edx
lea eax, [esp + 0x75c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileA]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
cmp esi, 0x7c
ja 0x40d2f7
je case.0x40d30f.141
lea eax, [esi - 0x6e]
cmp eax, 0xa
ja case.0x40d30f.143
movzx ecx, byte [eax + 0x40d7ac]
jmp dword [ecx*4 + 0x40d794]
push 0x7531
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7531
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00553270
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x1a0]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7532
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7532
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
call fcn.00553270
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x1a0]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7533
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7533
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x1a0]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x753b
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x753b
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00553270
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x1a0]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
lea eax, [esi - 0x8d]
cmp eax, 0xef
ja case.0x40d30f.143
movzx eax, byte [eax + 0x40d7d8]
jmp dword [eax*4 + 0x40d7b8]
push 0x7534
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7534
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x1a0]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7535
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7535
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00553270
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x1a0]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7536
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7536
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
call fcn.00553270
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x1a0]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7537
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7537
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x1a0]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7538
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7538
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00553270
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x1a0]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x7539
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7539
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x1a0]
push ecx
call fcn.00553270
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x1a0]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
push 0x753a
push 0x7530
push 0x88a3dc
call fcn.004475f0
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00553270
add esp, 0xc
and esi, 0x7fff
push esi
push 0x753a
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x1a0]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10
and esi, 0x7fff
push esi
push 0x143
push 0x88a3dc
call fcn.004475f0
push eax
lea edx, [esp + 0x1a0]
push edx
call fcn.00553270
add esp, 0xc
push 0
lea eax, [esp + 0x19c]
push eax
push 0x144
push 0x88a3dc
call fcn.004475f0
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb48
ret 0x10