Function at 0x41dc39
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x431c85
call fcn.00430000
sub esp, 0x14
push ebx
push esi
push 0x9889ffff
push 0xe5a7ffff
call fcn.00411cd8
add byte [0x43bbcc], al
push 0xc0f7ffff
push 0x6fd1ffff
call fcn.00411d90
add word [0x43bbd8], ax
push 0x1293ffff
movsx eax, byte [0x43bbc8]
push eax
call fcn.00411c25
mov byte [0x43bbca], al
mov eax, dword [0x43c120]
xor ebx, ebx
add esp, 0x18
cmp eax, ebx
je 0x41dce6
cmp byte [0x43b348], bl
jne 0x41dce6
cmp dword [eax + 4], ebx
je 0x41dce6
push dword [0x43bbf0]
push 0x5cdbffff
call fcn.00411d58
mov byte [0x43bbcb], al
movsx eax, byte [0x43bbcc]
push eax
push eax
call fcn.00411cd8
add esp, 0x10
mov dword [0x43bc00], eax
mov eax, dword [0x43c120]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [eax + 4]
jmp 0x41e012
push 0x326fffff
call dword [sym.imp.KERNEL32.dll_IsBadCodePtr]
push dword [0x43bbe8]
mov dword [0x43bbf8], eax
push 0x3969ffff
call fcn.00411c63
push dword [0x43bc0c]
add word [0x43bbe4], ax
push dword [0x43bbe8]
call fcn.00411d90
add esp, 0x10
cmp dword [ebp + 8], ebx
mov dword [0x43bbf8], eax
je 0x41dfa5
cmp byte [0x43b348], bl
je 0x41dfa5
cmp dword [0x43c120], ebx
je 0x41dfa5
movsx eax, byte [0x43bbd0]
push 0xc917ffff
push eax
call fcn.00411e4a
mov byte [0x43bbce], al
movsx eax, byte [0x43bbcd]
push eax
push 0xc37bffff
call fcn.00411e04
add byte [0x43bbca], al
mov al, byte [ebp + 0xf]
add esp, 0x10
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], ebx
mov byte [ebp - 0x20], al
push ebx
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push dword [ebp + 0xc]
call sub.MSVCRT.dll_strlen
pop ecx
push eax
lea ecx, [ebp - 0x20]
push dword [ebp + 0xc]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov esi, 0x43b34c
mov dword [ebp - 4], ebx
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_char_const___unsigned_int_]
push 0xd82bffff
push 0x66fbffff
call fcn.00411d1f
mov eax, dword [0x43bbf4]
push dword [ebp + 0x10]
neg eax
mov word [0x43bbe4], ax
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x20]
push eax
push dword [ebp + 0x10]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_char_const___unsigned_int_]
dec byte [0x43bbd0]
push 0xb1d5ffff
push dword [0x43bc04]
call fcn.00411c63
mov dword [0x43bc00], eax
push 0x4387ffff
movsx eax, word [0x43bbd6]
push eax
call fcn.00411cac
add byte [0x43bbcf], al
add esp, 0x10
lea eax, [ebp - 0x20]
mov ecx, 0x43c128
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.0041ece2
cmp byte [0x43bbca], bl
jne 0x41de4e
cmp dword [0x43bbf8], ebx
mov byte [0x43bbc9], bl
je 0x41de55
mov byte [0x43bbc9], 1
push edi
push 0xb115ffff
push dword [0x43bbf0]
call fcn.00411cd8
mov edi, dword [ebp + 0xc]
mov dword [0x43bbe8], eax
mov eax, dword [0x43c12c]
pop ecx
cmp edi, eax
pop ecx
je 0x41df56
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
add dword [0x43bc04], eax
push 0x27fffff
movsx eax, byte [0x43bbd1]
push eax
call fcn.00411cac
pop ecx
mov word [0x43bbd2], ax
pop ecx
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov byte [0x43bbcf], al
mov esi, dword [edi + 0x40]
movsx eax, word [0x43bbda]
push eax
push 0x27a3ffff
call fcn.00411d1f
mov dword [0x43bbf4], eax
mov eax, dword [edi + 0x44]
pop ecx
cmp esi, eax
pop ecx
je 0x41df25
movsx eax, word [0x43bbd8]
push 0x294bffff
push eax
call fcn.00411c25
add byte [0x43bbcb], al
mov eax, dword [0x43bc00]
and eax, dword [0x43bbf4]
pop ecx
pop ecx
mov word [0x43bbd8], ax
mov al, byte [0x43bc08]
mov byte [0x43bbd0], al
mov eax, dword [ebp + 8]
cmp dword [esi + 4], eax
je 0x41df25
push 0xffffffffffffffff
call dword [sym.imp.USER32.dll_IsCharUpperA]
add word [0x43bbd2], ax
add esi, 8
cmp esi, dword [edi + 0x44]
jne 0x41ded1
push 0x90abffff
push dword [0x43bbec]
call fcn.00411d58
or word [0x43bbdc], 0xffff
pop ecx
mov byte [0x43bbcd], al
cmp esi, dword [edi + 0x44]
pop ecx
je 0x41df56
sub esi, 8
dec byte [0x43bbd0]
mov esi, dword [esi]
jmp 0x41df59
mov esi, dword [ebp - 0x10]
movsx eax, byte [0x43bbcb]
push dword [0x43bbfc]
push eax
call fcn.00411e4a
add word [0x43bbdc], ax
push 0x7883ffff
push 0x8c61ffff
mov word [0x43bbe4], bx
call fcn.00411d90
or dword [ebp - 4], 0xffffffff
add esp, 0x10
lea ecx, [ebp - 0x20]
mov dword [0x43bbf4], eax
push 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov eax, esi
pop edi
jmp 0x41e012
push 0x72b7ffff
push eax
call fcn.00411e4a
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add dword [0x43bc0c], eax
pop ecx
pop ecx
push dword [ebp + 0xc]
call esi
movsx eax, word [0x43bbd2]
push dword [0x43bbf8]
push eax
call fcn.00411d90
mov dword [0x43bbfc], eax
mov eax, dword [0x43bbf8]
dec eax
mov word [0x43bbda], ax
movsx eax, byte [0x43bbc8]
push eax
push 0x8f4bffff
call fcn.00411d1f
add esp, 0x10
add word [0x43bbda], ax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 0xc]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0xc