Function at 0x473958
Capabilities:
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, 0x40503c
mov ecx, 0x1917c
xor eax, eax
rep stosd dword es:[edi], eax
call dword [sym.imp.kernel32.dll_GetProcessHeap]
mov dword [0x4012e4], eax
push 0x7000
call fcn.0046bf6e
mov dword [0x405040], eax
add eax, 0x1000
mov dword [0x40507c], eax
add eax, 0x1000
mov dword [0x405080], eax
add eax, 0x1000
mov dword [0x405088], eax
add eax, 0x2000
mov dword [0x40508c], eax
mov ebx, dword [0x405088]
push 0x104
push ebx
push 0
call dword [sym.imp.kernel32.dll_GetModuleFileNameW]
push ebx
push dword [0x405040]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
push dword [0x40507c]
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 0x4650fc
call dword [sym.imp.kernel32.dll_lstrcpyW]
push ebx
call dword [sym.imp.kernel32.dll_SetCurrentDirectoryW]
push 0
push 0x4050f4
push 0x4050b4
push 0x4050b0
call dword [sym.imp.msvcrt.dll___wgetmainargs]
add esp, 0x10
call fcn.0046ca6a
cmp eax, 0xffffffff
je 0x4738c5
mov dword [0x40503c], eax
jmp 0x473af2
cmp dword [0x4050b0], 2
jge 0x473933
mov eax, dword [0x405040]
mov word [eax], 0
push 1
push eax
call fcn.00472cd1
test eax, eax
je 0x473921
push eax
push dword [0x40507c]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
call dword [sym.imp.shlwapi.dll_PathStripPathW]
push 0xfde9
push dword [0x405040]
call fcn.004730e0
cmp eax, 0xffffffff
je 0x4739b0
push eax
call fcn.0046e5e2
mov dword [0x40503c], eax
jmp 0x473af2
push dword [0x405040]
call fcn.0046bfdb
push eax
call dword [sym.imp.kernel32.dll_ExitProcess]
mov ebx, dword [0x4050b4]
mov eax, dword [ebx + 4]
push eax
push dword [0x405040]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x473958
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 [0x405040]
call dword [sym.imp.kernel32.dll_lstrlenW]
test eax, eax
je 0x4738ce
mov eax, dword [0x405040]
cmp word [eax], 0x2d
jne 0x473982
xor eax, eax
jmp 0x4739b0
push dword [0x405040]
push dword [0x40507c]
call dword [sym.imp.kernel32.dll_lstrcpyW]
push eax
call dword [sym.imp.shlwapi.dll_PathStripPathW]
push 0xfde9
push dword [0x405040]
call fcn.004730e0
cmp eax, 0xffffffff
jne 0x473a1e
push eax
call 0x4739ee
dec eax
add byte [edi], ch
bound eax, qword [eax]
bound eax, qword [eax]
jns 0x4739c0
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 0x4739d6
imul eax, dword [eax], 0x6e006f
and byte [eax], al
xor dword [eax], eax
add byte cs:[ecx], bh
add byte [esi], ch
add byte [esi], dh
add byte [0xa00], cl
add bh, bh
adc eax, sym.imp.msvcrt.dll_wprintf
add esp, 4
pop eax
test eax, eax
je 0x473921
push dword [0x405040]
push 0x403fe4
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 8
mov eax, 0xffffffff
jmp 0x473921
push eax
call fcn.0046e5e2
mov dword [0x40503c], eax
mov eax, dword [ebx + 8]
push eax
push dword [0x405088]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x473a48
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 [0x405088]
call dword [sym.imp.kernel32.dll_lstrlenW]
cmp eax, 0
je 0x473af2
nop
call 0x473a76
sub eax, 0x69006200
add byte [esi], ch
add byte fs:[eax], al
add bh, bh
xor eax, 0x405088
call dword [sym.imp.kernel32.dll_lstrcmpiW]
cmp eax, 0
jne 0x473af2
mov eax, dword [ebx + 0xc]
push eax
push dword [0x405088]
call dword [sym.imp.kernel32.dll_lstrcpyW]
call 0x473aa6
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 [0x405088]
call dword [sym.imp.kernel32.dll_lstrlenW]
cmp eax, 0
je 0x473af2
call fcn.0046cbe8
cmp eax, 1
jne 0x473ada
push 0x403faa
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 4
xor eax, eax
jmp 0x473aed
push 0x403fc8
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 4
mov eax, 0xffffffff
jmp 0x473921
call section..code
push 1
call fcn.0046b4db
push 1
push dword [0x405040]
call fcn.0046bc6c
mov eax, dword [0x4012b4]
mov dword [0x4050d4], eax
mov eax, dword [0x4012bc]
mov dword [0x4050d8], eax