Function at 0x40c1c0
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, 0xb34
push ebx
push ebp
push esi
call fcn.0040b830
push str.test.txt
call fcn.005523a6
push str.c:comsik.txt
call fcn.005523a6
push str.GunBound.INI
call fcn.005523a6
mov ecx, dword [0x5e2760]
add esp, 0xc
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x1b9
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e26b0]
push 1
lea edx, [esp + 0x10]
push edx
xor ebp, ebp
push eax
mov dword [esp + 0x18], ebp
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e26b8]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 2
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e26c0]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 4
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e26c8]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 5
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e26d0]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 8
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e26d8]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0xa
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e26e0]
push 1
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], 0xf
push eax
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e26e8]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x14
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e26f0]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x19
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e26f8]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x1e
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e2700]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x32
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e2708]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x46
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e2710]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x4b
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e2718]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x50
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e2720]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x62
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e2728]
push 1
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], 0x64
push eax
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e2730]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0xa0
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e2738]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0xc8
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov eax, dword [0x5e2740]
push 1
lea edx, [esp + 0x10]
push edx
push eax
mov dword [esp + 0x18], 0x100
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov edx, dword [0x5e2748]
push 1
lea ecx, [esp + 0x10]
push ecx
push edx
mov dword [esp + 0x18], 0x168
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
mov ecx, dword [0x5e2750]
push 1
lea eax, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x18], 0x3e8
call fcn.004cc430
mov esi, eax
call fcn.0040ae50
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 0x40c4fb
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test bl, bl
jne 0x40d61c
call fcn.00532610
push 0x8158
call fcn.005493ed
add esp, 4
cmp eax, ebp
je 0x40c527
push 0x885aa8
push ebp
push eax
call fcn.00447e10
jmp 0x40c529
xor eax, eax
mov esi, eax
mov dword [0x883d08], eax
mov dword [0x8849c4], eax
call fcn.004480a0
push 0x8158
call fcn.005493ed
add esp, 4
cmp eax, ebp
je 0x40c55a
push 0x885aa8
push 1
push eax
call fcn.00447e10
jmp 0x40c55c
xor eax, eax
mov esi, eax
mov dword [0x883d0c], eax
mov dword [0x8849c0], eax
call fcn.004480a0
push 0x8158
call fcn.005493ed
add esp, 4
cmp eax, ebp
je 0x40c58d
push 0x885aa8
push 2
push eax
call fcn.00447e10
jmp 0x40c58f
xor eax, eax
push edi
mov esi, eax
mov dword [0x883d10], eax
mov dword [0x8849c8], eax
call fcn.004480a0
push 0x200c
call fcn.005493ed
add esp, 4
cmp eax, ebp
je 0x40c5c2
push 0x885aa8
push 3
mov edi, eax
call fcn.00407ff0
jmp 0x40c5c4
xor eax, eax
mov dword [0x8849cc], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
push eax
call fcn.0055243f
mov esi, dword [sym.imp.KERNEL32.dll_GetCommandLineA]
add esp, 4
call esi
push eax
push str.TID_s_n
call fcn.00451d70
add esp, 8
call esi
push str.None_Debug_Mode_n
call fcn.00451d70
push str.None_RAS_Mode_n
call fcn.00451d70
mov ecx, eax
add esp, 8
lea esi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x40c610
sub ecx, esi
cmp ecx, 0x60
jne 0x40d61b
xor esi, esi
mov edi, eax
jmp 0x40c630
lea edx, [esi + 0x8845f0]
push edx
push str._02x
push edi
call fcn.005522dd
add esp, 0xc
inc esi
add edi, 2
cmp esi, 0x30
jl 0x40c630
push str.Create_Window_n
call fcn.00451d70
mov eax, dword [esp + 0xb50]
mov edi, dword [esp + 0xb4c]
add esp, 4
cmp eax, ebp
jne 0x40c6b8
push 0x7f00
push ebp
mov dword [esp + 0x2c], 0xb
mov dword [esp + 0x30], 0x40e950
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], 0x5832dc
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 0x5832d0
push 0x5832dc
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 [0x8845a0], 1
mov dword [0x8849f0], ebp
mov dword [0x8849f4], edi
mov dword [0x59b970], 0
jne 0x40c7fb
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.0040b640
test eax, eax
mov dword [0x59b970], eax
jne 0x40c7f3
call fcn.0040a5e0
push 0x10
mov ecx, 0x258
mov edx, 0x320
mov esi, eax
call fcn.0040a430
add esp, 4
mov ecx, eax
call fcn.0040b640
cmp eax, esi
mov dword [esp + 0x18], eax
jae 0x40c7f3
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 0x40c7d4
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 0x40c7d4
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.0040b640
push eax
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a510
add esp, 4
push ebx
push ebp
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [esp + 0xb54]
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.004baa00
call fcn.00417400
push 0x884a00
mov ecx, 0x8872b0
call fcn.00534720
test al, al
jne 0x40c843
push str.MD5___GME_NOT_FOUND_ERROR_
call fcn.004bab20
add esp, 4
push 0x8872dc
call fcn.00446f40
mov eax, dword [0x884634]
test eax, eax
je 0x40c88f
push 0x882e80
lea ebx, [eax + 0x77af8]
call fcn.0044bf90
test al, al
je 0x40c980
push 0xf4240
push 0x8872dc
call fcn.00447150
mov ecx, dword [0x884634]
add ecx, 0x77af8
push ecx
call fcn.0044c060
mov ebx, dword [sym.imp.USER32.dll_MessageBoxA]
call fcn.00549510
mov esi, eax
cmp esi, 0x755
jne 0x40d0bf
push edi
mov ebx, ebp
call fcn.0040d880
push eax
push str.InitEvangelion_returns__d_n
mov dword [esp + 0x1c], eax
call fcn.00451d70
add esp, 0xc
test eax, eax
jne 0x40c99a
mov edx, dword [0x884634]
add edx, 0x19ead
push edx
lea esi, [esp + 0x6c]
call fcn.0040b710
push str._n1_n_n
call fcn.00451d70
add esp, 8
push ebp
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [0x8849cc]
mov esi, dword [eax + 0x2004]
push 0x20a3
mov edi, str.localhost
mov ebx, eax
call fcn.004510f0
mov byte [ebx + 0x2008], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x8849b4], eax
mov eax, 6
call fcn.00413a70
mov esi, dword [sym.imp.USER32.dll_PeekMessageA]
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
mov ebx, dword [sym.imp.USER32.dll_TranslateMessage]
mov edi, edi
push 0
push 0
push 0
push 0
lea eax, [esp + 0x5c]
push eax
call esi
test eax, eax
je 0x40cb78
push 0
push 0
push 0
lea ecx, [esp + 0x58]
push ecx
call edi
test eax, eax
je 0x40ca7f
lea edx, [esp + 0x4c]
push edx
call ebx
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x40c940
mov ebx, dword [sym.imp.USER32.dll_MessageBoxA]
push 0
push str.error
push str.Can_not_find_EventWord.dat_file
push ebp
call ebx
jmp 0x40c895
cmp eax, 0x17
jne 0x40ca7f
lea eax, [esp + 0x14]
push eax
push 0xf003f
push 0
push str.SoftwareSoftnyxGunBoundWC
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40ca27
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x28]
push eax
push 0
push str.Template
push ecx
mov dword [esp + 0x30], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40ca1c
mov edx, dword [esp + 0x1c]
push edx
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a510
mov eax, dword [esp + 0x18]
add esp, 4
push str.Template
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
mov ebx, ebp
call fcn.0040d880
add esp, 4
test eax, eax
jne 0x40ca7f
push str._n2_n_n
call fcn.00451d70
mov edx, dword [0x884634]
add edx, 0x19ead
push edx
lea esi, [esp + 0x70]
call fcn.0040b710
add esp, 8
push ebp
call dword [sym.imp.USER32.dll_SetFocus]
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x8849b4], eax
mov eax, 6
call fcn.00413a70
mov dword [0x8845a0], 0
mov eax, dword [0x59b970]
test eax, eax
jne 0x40cb10
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 0x40cb10
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x28]
push ecx
push 0
push str.Template
push edx
mov dword [esp + 0x34], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40cb05
mov eax, dword [esp + 0x18]
push eax
mov edx, 0x10
mov eax, 0x258
mov ecx, 0x320
call fcn.0040a510
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 str.Unininting_Evangelion_n
call fcn.00451d70
mov esi, dword [esp + 0x14]
test esi, esi
sete al
push eax
call fcn.0040e2f0
push str.Show_Cursor_n
call fcn.00451d70
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 [0x8849ee], 1
je 0x40cfc5
test esi, esi
je 0x40cfc5
lea eax, [esi - 0xd]
cmp eax, 0xda
ja case.0x40cb71.14
movzx ecx, byte [eax + 0x40d668]
jmp dword [ecx*4 + 0x40d62c]
call fcn.00414940
jmp 0x40c940
mov ecx, dword [0x884634]
add ecx, 0x29264
call fcn.0042dd80
push eax
mov ecx, 0x5e275c
call fcn.0042dd80
push eax
push 0x12d
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x190]
push edx
call fcn.00550730
add esp, 0x10
push 0
push 0x13b
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
push 0x882e80
push 0x12e
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
push 0x13b
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
mov eax, dword [0x884634]
mov ecx, dword [eax + 0x2c4fc]
push ecx
mov ecx, 0x5e275c
call fcn.0042dd80
push eax
push 0x12f
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x190]
push edx
call fcn.00550730
add esp, 0x10
push 0
push 0x13b
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
push 0x882e80
push 0x130
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
push 0x13b
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
mov eax, dword [0x884634]
push 0x63
push eax
call fcn.00423ca0
push eax
mov ecx, 0x5e275c
call fcn.0042dd80
push eax
push 0x131
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x190]
push ecx
call fcn.00550730
add esp, 0x10
jmp 0x40cc0b
push 0x882e80
push 0x132
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
call fcn.00550730
add esp, 0xc
push 0
push 0x13b
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
push 0x882e80
push 0x142
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
call fcn.00550730
add esp, 0xc
jmp 0x40cbbf
mov ecx, dword [0x884998]
push 0x882e80
push ecx
mov ecx, 0x5e2754
call fcn.0042dd80
push eax
push 0x133
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x194]
push edx
call fcn.00550730
add esp, 0x14
jmp 0x40cbbf
mov ecx, dword [0x884998]
push 0x882e80
push ecx
mov ecx, 0x5e2754
call fcn.0042dd80
push eax
push 0x134
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x194]
push edx
call fcn.00550730
add esp, 0x14
jmp 0x40cbbf
push 0
push 0x13d
push 0x8872dc
call fcn.00447150
push eax
push 0x135
jmp 0x40cef5
mov byte [esp + 0x584], 0
xor eax, eax
mov ecx, 0x1f
lea edi, [esp + 0x585]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x10]
push ecx
stosw word es:[edi], ax
lea edx, [esp + 0x588]
push str.Language.GetMessage_317___d
push edx
stosb byte es:[edi], al
call fcn.00550730
add esp, 0xc
push 0
lea eax, [esp + 0x588]
push eax
push 0x136
push 0x8872dc
call fcn.00447150
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x13e
jmp 0x40cfad
push 0
push 0x13d
push 0x8872dc
call fcn.00447150
push eax
push 0x137
push 0x8872dc
call fcn.00447150
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x13f
jmp 0x40cfad
push 0
push 0x13d
push 0x8872dc
call fcn.00447150
push eax
push pe_nt_image_headers32
jmp 0x40cef5
push 0
push 0x13d
push 0x8872dc
call fcn.00447150
push eax
push 0x139
push 0x8872dc
call fcn.00447150
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
test esi, 0x8000
je 0x40cf5f
and esi, 0x7fff
push esi
push 0x143
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x188]
push edx
push 0x144
push 0x8872dc
call fcn.00447150
push eax
push ebp
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40cfc5
push esi
push 0x13a
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
call fcn.00550730
add esp, 0xc
push 0
push 0x13d
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
push 0
push 0
push 0x140
push 0x8872dc
call fcn.00447150
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
xor eax, eax
jmp 0x40cfd0
mov cl, byte [eax + 0x882e80]
mov byte [esp + eax + 0x744], cl
inc eax
test cl, cl
jne 0x40cfd0
lea edi, [esp + 0x744]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40cff0
mov edx, dword [str.gunbound.ex_]
mov eax, dword [0x5831f8]
mov ecx, dword [0x5831fc]
mov dword [edi], edx
mov dl, byte [0x583200]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
lea eax, [esp + 0x604]
push eax
lea ecx, [esp + 0x748]
push ecx
mov byte [edi + 0xc], dl
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
je 0x40d61b
xor eax, eax
jmp 0x40d040
mov cl, byte [eax + 0x882e80]
mov byte [esp + eax + 0x184], cl
inc eax
test cl, cl
jne 0x40d040
lea edi, [esp + 0x184]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40d060
mov edx, dword [str.gunbound.exe]
mov eax, dword [0x5831e8]
mov ecx, dword [0x5831ec]
mov dword [edi], edx
mov dl, byte [0x5831f0]
mov dword [edi + 4], eax
lea eax, [esp + 0x184]
mov dword [edi + 8], ecx
push eax
mov byte [edi + 0xc], dl
call fcn.005523a6
add esp, 4
lea ecx, [esp + 0x184]
push ecx
lea edx, [esp + 0x748]
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileA]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
cmp esi, 0x7c
ja 0x40d2a8
je case.0x40d2c0.141
lea eax, [esi - 0x6e]
cmp eax, 0xa
ja case.0x40d2c0.143
movzx eax, byte [eax + 0x40d75c]
jmp dword [eax*4 + 0x40d744]
push 0x7531
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7531
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
call fcn.00550730
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x18c]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7532
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7532
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
call fcn.00550730
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x18c]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7533
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7533
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x18c]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x753b
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x753b
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
call fcn.00550730
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x18c]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
lea eax, [esi - 0x8d]
cmp eax, 0xef
ja case.0x40d2c0.143
movzx edx, byte [eax + 0x40d788]
jmp dword [edx*4 + 0x40d768]
push 0x7534
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7534
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x18c]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7535
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7535
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
call fcn.00550730
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x18c]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7536
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7536
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
call fcn.00550730
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x18c]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7537
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7537
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x18c]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7538
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x88]
push ecx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7538
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x18c]
push edx
call fcn.00550730
add esp, 0xc
push 0
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x18c]
push ecx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x7539
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea edx, [esp + 0x88]
push edx
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x7539
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x18c]
push eax
call fcn.00550730
add esp, 0xc
push 0
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x18c]
push edx
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
push 0x753a
push 0x7530
push 0x8872dc
call fcn.00447150
push eax
lea eax, [esp + 0x88]
push eax
call fcn.00550730
add esp, 0xc
and esi, 0x7fff
push esi
push 0x753a
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x18c]
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10
and esi, 0x7fff
push esi
push 0x143
push 0x8872dc
call fcn.00447150
push eax
lea ecx, [esp + 0x18c]
push ecx
call fcn.00550730
add esp, 0xc
push 0
lea edx, [esp + 0x188]
push edx
push 0x144
push 0x8872dc
call fcn.00447150
push eax
push ebp
call ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb34
ret 0x10