Function at 0x4163cf
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x431ab0
call fcn.00430710
sub esp, 0xc
push ebx
push ebp
mov ebp, 0x43b158
push esi
push ebp
push 0x40
mov dword [esp + 0x1c], ebp
call fcn.0040f588
pop ecx
call eax
movsx eax, byte [0x43ac7e]
and eax, dword [0x43acbc]
push 0x5171ffff
push dword [0x43acb8]
xor ebx, ebx
mov dword [0x43acb4], eax
mov dword [esp + 0x28], ebx
movsx eax, word [0x43ac90]
or eax, dword [0x43aca0]
mov word [0x43ac8a], 1
mov dword [esp + 0x14], ebx
add dword [0x43aca8], eax
call fcn.0040b0f0
add word [0x43ac94], ax
mov esi, dword [0x43b134]
movsx eax, byte [0x43ac80]
push eax
push dword [0x43ac9c]
call fcn.0040b037
add esp, 0x10
add word [0x43ac92], ax
cmp esi, dword [0x43b138]
je 0x4115cd
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
add byte [0x43ac7d], al
mov ax, word [0x43aca0]
or ax, word [0x43ac94]
push 0xc151ffff
push dword [0x43ac9c]
add word [0x43ac8e], ax
call fcn.0040b037
pop ecx
mov word [0x43ac8e], ax
pop ecx
mov ecx, dword [esi]
push 0x12
call fcn.00410db1
movsx eax, word [0x43ac90]
push eax
movsx eax, byte [0x43ac81]
push eax
call fcn.0040b002
push 0xf2d1ffff
push 0x4679ffff
mov byte [0x43ac81], al
call fcn.0040af32
add esp, 0x10
mov dword [0x43aca8], eax
push 0xcf8fffff
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
add dword [0x43aca0], eax
mov eax, dword [esi]
cmp dword [eax + 0x28], ebx
je 0x41157b
cmp byte [0x43ac7d], bl
setne al
mov byte [0x43ac7e], al
movsx eax, byte [0x43ac7a]
push eax
push dword [0x43acac]
call fcn.0040afcb
xor eax, eax
cmp word [0x43ac86], bx
pop ecx
setne al
cmp dword [esp + 0x10], ebx
pop ecx
mov word [0x43ac82], ax
jne 0x4114e8
push 0x3de5ffff
push 0xcb0dffff
call fcn.0040b0f0
add dword [0x43acac], eax
or word [0x43ac84], 0xffff
sub dword [0x43ac98], 0x40480001
mov eax, dword [esi]
pop ecx
lea edx, [esp + 0x10]
mov eax, dword [eax + 0x28]
pop ecx
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x94]
push 0xffffffffffffffff
call dword [sym.imp.USER32.dll_IsCharAlphaA]
mov word [0x43ac8a], ax
xor eax, eax
cmp byte [0x43ac7c], bl
setne al
mov word [0x43ac92], ax
movsx eax, byte [0x43ac7d]
mov ecx, dword [0x43aca8]
or eax, 0xe0afffff
mov dword [0x43acb0], eax
push 0x6a2bffff
movsx eax, word [0x43ac92]
lea eax, [ecx + eax - 0x21d40001]
mov dword [0x43aca8], eax
movsx eax, word [0x43ac82]
push eax
call fcn.0040b0ac
mov byte [0x43ac7b], al
mov eax, dword [esi]
pop ecx
mov eax, dword [eax + 0x28]
pop ecx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x80]
movsx eax, byte [0x43ac7a]
push 0x8a5bffff
push eax
call fcn.0040af32
pop ecx
mov word [0x43ac92], ax
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [0x43acb8], eax
movsx eax, word [0x43ac88]
push eax
movsx eax, byte [0x43ac79]
push eax
call fcn.0040b002
pop ecx
mov word [0x43ac86], ax
pop ecx
or ax, 0xffff
dec word [0x43ac8a]
sub ax, word [0x43ac88]
push 0xda8bffff
add esi, 4
mov word [0x43ac94], ax
movsx eax, byte [0x43ac81]
push eax
call fcn.0040b0ac
mov byte [0x43ac7e], al
push 0x9a8dffff
movsx eax, word [0x43ac88]
push eax
call fcn.0040aeeb
add esp, 0x10
add dword [0x43ac98], eax
jmp 0x4113b8
xor eax, eax
cmp dword [0x43aca0], ebx
push 0x3e8
push 0x59
setne al
add byte [0x43ac78], al
call fcn.0040f588
pop ecx
call eax
push 0x6d8bffff
push 0xbf07ffff
call fcn.0040b0ac
add word [0x43ac82], ax
movsx eax, word [0x43ac88]
push eax
push 0x66d5ffff
call fcn.0040b087
add byte [0x43ac81], al
mov esi, dword [0x43b134]
movsx eax, byte [0x43ac79]
push 0x8975ffff
push eax
call fcn.0040b0ac
mov byte [0x43ac81], al
push 0x6b9dffff
movsx eax, byte [0x43ac7c]
push eax
call fcn.0040b087
add byte [0x43ac79], al
movsx eax, word [0x43ac8c]
push eax
push 0x8ce3ffff
call fcn.0040afcb
add esp, 0x28
cmp esi, dword [0x43b138]
mov word [0x43ac92], ax
je 0x41171b
push edi
cmp word [0x43ac82], bx
mov di, word [0x43ac94]
jne 0x411691
cmp di, bx
jne 0x411691
xor eax, eax
jmp 0x411694
push 1
pop eax
add byte [0x43ac7a], al
movsx eax, di
push eax
movsx eax, word [0x43ac88]
push eax
call fcn.0040b0ac
add byte [0x43ac7c], al
movsx eax, word [0x43ac90]
push eax
push 0x662dffff
call fcn.0040b037
add byte [0x43ac7a], al
mov edi, dword [esi]
add esp, 0x10
cmp edi, ebx
je 0x4116e0
mov ecx, edi
call fcn.004118b0
push edi
call fcn.00430672
pop ecx
push 0xb22fffff
push 0x5355ffff
call fcn.0040b002
push 0x3cc9ffff
push 0x284fffff
mov byte [0x43ac7d], al
add esi, 4
call fcn.0040af32
add esp, 0x10
cmp esi, dword [0x43b138]
mov dword [0x43acb0], eax
jne 0x411678
pop edi
movsx eax, byte [0x43ac7d]
push eax
push 0x4ee3ffff
call fcn.0040afcb
mov byte [0x43ac81], al
push 0xcecfffff
movsx eax, byte [0x43ac7b]
push eax
call fcn.0040b002
inc word [0x43ac82]
mov dword [0x43ac9c], eax
movsx eax, byte [0x43ac80]
push eax
push 0x4ebffff
mov dword [esp + 0x28], ebx
call fcn.0040aeeb
add byte [0x43ac79], al
mov al, byte [0x43aca4]
inc al
push 0xb30bffff
add byte [0x43ac79], al
push 0x1e5dffff
call fcn.0040b002
add esp, 0x20
mov byte [0x43ac7b], al
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x10]
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
movsx eax, byte [0x43ac7a]
push dword [0x43ac98]
push eax
call fcn.0040af6d
add word [0x43ac94], ax
cmp dword [esp + 0x18], ebx
pop ecx
pop ecx
je 0x411857
movsx eax, byte [0x43ac7b]
push eax
push 0xc599ffff
call fcn.0040afcb
mov dword [0x43aca4], eax
movsx eax, word [0x43ac84]
push eax
push 0x84e9ffff
call fcn.0040b037
push 0xed47ffff
push 0x885ffff
mov word [0x43ac86], ax
call fcn.0040af32
add esp, 0x18
add byte [0x43ac80], al
push ebx
push dword [esp + 0x14]
push 0x5b
call fcn.0040f588
pop ecx
call eax
cmp word [0x43ac8e], bx
je 0x411835
cmp byte [0x43ac7a], bl
mov word [0x43ac94], 1
jne 0x41183c
mov word [0x43ac94], bx
movsx eax, byte [0x43ac79]
push eax
push 0xbc03ffff
call fcn.0040af32
add word [0x43ac90], ax
pop ecx
pop ecx
mov al, byte [0x43ac78]
push dword [0x43ac98]
and al, byte [0x43ac7a]
push 0xeed9ffff
movsx ax, al
mov word [0x43ac8e], ax
movsx ax, byte [0x43ac7c]
add ax, word [0x43ac92]
mov word [0x43ac86], ax
call fcn.0040afcb
add dword [0x43aca4], eax
pop ecx
pop ecx
push ebp
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x18]
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
leave
ret
jmp 0x411322