Function at 0x47371b
Capabilities:
Set current directory
Terminate process

Disassembly:
push 0
call dword [sym.imp.msvcrt.dll_time]
add esp, 4
push eax
call dword [sym.imp.msvcrt.dll_srand]
add esp, 4
mov edi, 0x405150
mov ecx, 0x1917c
xor eax, eax
rep stosd dword es:[edi], eax
call dword [sym.imp.kernel32.dll_GetProcessHeap]
mov dword [0x401204], eax
push 0x7000
call fcn.0046bf2c
mov dword [0x405154], eax
add eax, 0x1000
mov dword [0x405190], eax
add eax, 0x1000
mov dword [0x405194], eax
add eax, 0x1000
mov dword [0x40519c], eax
add eax, 0x2000
mov dword [0x4051a0], eax
mov ebx, dword [0x40519c]
push 0x104
push ebx
push 0
call dword [sym.imp.kernel32.dll_GetModuleFileNameW]
push ebx
push dword [0x405154]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
push dword [0x405190]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
call dword [sym.imp.shlwapi.dll_PathStripPathW]
push ebx
call dword [sym.imp.shlwapi.dll_PathRemoveFileSpecW]
push ebx
push 0x465210
call dword [sym.imp.kernel32.dll_lstrcpyW]
push ebx
call dword [sym.imp.kernel32.dll_SetCurrentDirectoryW]
push 0
push 0x405208
push 0x4051c8
push 0x4051c4
call dword [sym.imp.msvcrt.dll___wgetmainargs]
add esp, 0x10
call fcn.0046c960
cmp eax, 0xffffffff
je 0x4737fd
mov dword [0x405150], eax
jmp 0x473a2a
cmp dword [0x4051c4], 2
jge 0x47386b
mov eax, dword [0x405154]
mov word [eax], 0
push 1
push eax
call fcn.00472c0d
test eax, eax
je 0x473859
push eax
push dword [0x405190]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
call dword [sym.imp.shlwapi.dll_PathStripPathW]
push 0xfde9
push dword [0x405154]
call fcn.00473018
cmp eax, 0xffffffff
je 0x4738e8
push eax
call fcn.0046e4ce
mov dword [0x405150], eax
jmp 0x473a2a
push dword [0x405154]
call fcn.0046bf99
push eax
call dword [sym.imp.kernel32.dll_ExitProcess]
mov ebx, dword [0x4051c8]
mov eax, dword [ebx + 4]
push eax
push dword [0x405154]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x473890
or dword [eax], eax
and byte [eax], al
and al, byte [eax]
daa
add byte [eax], al
add byte [eax - 1], dl
adc eax, sym.imp.shlwapi.dll_StrTrimW
push dword [0x405154]
call dword [sym.imp.kernel32.dll_lstrlenW]
test eax, eax
je 0x473806
mov eax, dword [0x405154]
cmp word [eax], 0x2d
jne 0x4738ba
xor eax, eax
jmp 0x4738e8
push dword [0x405154]
push dword [0x405190]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
call dword [sym.imp.shlwapi.dll_PathStripPathW]
push 0xfde9
push dword [0x405154]
call fcn.00473018
cmp eax, 0xffffffff
jne 0x473956
push eax
call 0x473926
dec eax
add byte [edi], ch
bound eax, qword [eax]
bound eax, qword [eax]
jns 0x4738f8
and byte [eax], al
inc edx
add byte [ecx], al
push ebx
add byte [ecx], cl
inc ebx
add byte [eax], ah
add byte [esi], dh
add byte gs:[edx], dh
jae 0x47390e
imul eax, dword [eax], 0x6e006f
and byte [eax], al
xor al, byte [eax]
add byte cs:[eax], dh
add byte [esi], ch
add byte [eax], dh
add byte [0xa00], cl
add bh, bh
adc eax, sym.imp.msvcrt.dll_wprintf
add esp, 4
pop eax
test eax, eax
je 0x473859
push dword [0x405154]
push 0x404116
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 8
mov eax, 0xffffffff
jmp 0x473859
push eax
call fcn.0046e4ce
mov dword [0x405150], eax
mov eax, dword [ebx + 8]
push eax
push dword [0x40519c]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x473980
or dword [eax], eax
and byte [eax], al
and al, byte [eax]
daa
add byte [eax], al
add byte [eax - 1], dl
adc eax, sym.imp.shlwapi.dll_StrTrimW
push dword [0x40519c]
call dword [sym.imp.kernel32.dll_lstrlenW]
cmp eax, 0
je 0x473a2a
nop
call 0x4739ae
sub eax, 0x69006200
add byte [esi], ch
add byte fs:[eax], al
add bh, bh
xor eax, 0x40519c
call dword [sym.imp.kernel32.dll_lstrcmpiW]
cmp eax, 0
jne 0x473a2a
mov eax, dword [ebx + 0xc]
push eax
push dword [0x40519c]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x4739de
or dword [eax], eax
and byte [eax], al
and al, byte [eax]
daa
add byte [eax], al
add byte [eax - 1], dl
adc eax, sym.imp.shlwapi.dll_StrTrimW
push dword [0x40519c]
call dword [sym.imp.kernel32.dll_lstrlenW]
cmp eax, 0
je 0x473a2a
call fcn.0046cade
cmp eax, 1
jne 0x473a12
push 0x4040dc
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 4
xor eax, eax
jmp 0x473a25
push 0x4040fa
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 4
mov eax, 0xffffffff
jmp 0x473859
call section..code
push 1
call fcn.0046b4a3
push 1
push dword [0x405154]
call fcn.0046bc2a
mov eax, dword [0x4011d4]
mov dword [0x4051e8], eax
mov eax, dword [0x4011dc]
mov dword [0x4051ec], eax