Function at 0x421e16
Capabilities:
Accept command line arguments
Identify system language via api

Disassembly:
mov eax, 0x43248e
call fcn.00430710
sub esp, 0xa8
mov al, byte [ebp + 0xb]
push ebx
push esi
xor ebx, ebx
push edi
push ebx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x44], ebx
mov byte [ebp - 0x28], al
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 esi, dword [0x435228]
push 1
pop edi
mov al, byte [esi]
mov dword [ebp - 4], edi
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
lea eax, [ebp - 0x64]
push eax
call fcn.00421b9c
movsx eax, byte [0x43ac7b]
push eax
push 0xe63dffff
mov byte [ebp - 4], 2
call fcn.0040afcb
add byte [0x43ac7c], al
movsx eax, byte [0x43ac78]
push eax
push 0x9787ffff
call fcn.0040b002
add esp, 4
mov dword [0x43aca0], eax
mov al, byte [ebp - 0x64]
mov esi, esp
mov dword [ebp - 0x18], esp
push ebx
mov ecx, esi
mov byte [esi], al
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, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov ecx, esi
push dword [eax]
lea eax, [ebp - 0x64]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
call fcn.00402b5a
push 0xdd1bffff
push 0x583ffff
mov byte [ebp - 0x11], al
call fcn.0040b002
push dword [0x43acac]
add word [0x43ac94], ax
push 0x9ffffff
call fcn.0040b037
add esp, 0x20
mov word [0x43ac8c], ax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp byte [ebp - 0x11], bl
mov byte [0x43ac79], al
je 0x421f9a
movsx eax, byte [0x43ac7a]
push 0x8b97ffff
push eax
call fcn.0040b002
add word [0x43ac8c], ax
push 0x7583ffff
push 0xefe9ffff
call fcn.0040af94
add dword [0x43ac9c], eax
mov al, byte [0x43acbc]
or al, byte [0x43ac7d]
mov byte [0x43ac7c], al
call fcn.00402db3
push dword [0x43aca8]
push 0x9199ffff
call fcn.0040b0f0
add byte [0x43ac7c], al
push 0x9989ffff
movsx eax, byte [0x43ac7b]
push eax
call fcn.0040b002
add esp, 0x20
mov dword [0x43acb0], eax
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
lea ecx, [ebp - 0x28]
push dword [eax]
lea eax, [ebp - 0x64]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
mov eax, dword [0x43522c]
mov esi, dword [0x43a344]
xor esi, dword [0x43a348]
mov al, byte [eax]
xor esi, dword [0x43a34c]
add al, 0x76
movzx eax, al
xor esi, dword [0x43a350]
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push dword [0x43522c]
push eax
call fcn.0042d836
push eax
mov dword [ebp - 0x18], eax
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x18]
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_]
lea eax, [ebp - 0x40]
push esi
push eax
call fcn.004052c9
pop ecx
pop ecx
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 3
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 2
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 esi, dword [0x435234]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
movsx eax, byte [0x43ac7e]
push eax
push 0x6c1ffff
call fcn.0040af32
add dword [0x43aca4], eax
mov al, byte [0x43ac92]
sub byte [0x43ac7b], al
mov esi, 0x43a340
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
mov esi, dword [0x435238]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
push dword [0x43aca8]
movzx eax, ax
push 0x7c9ffff
mov dword [0x43ac9c], eax
call fcn.0040b087
pop ecx
mov word [0x43ac8e], ax
pop ecx
call fcn.00401c4d
mov eax, dword [eax*4 + 0x43b32c]
mov al, byte [eax]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov esi, esp
call fcn.00401c4d
push dword [eax*4 + 0x43b32c]
push esi
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
add dword [0x43acbc], eax
mov al, byte [ebp + 0xb]
push ebx
lea ecx, [ebp - 0x54]
mov byte [ebp - 0x54], al
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 byte [ebp - 4], 4
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov esi, dword [0x43523c]
add word [0x43ac8a], ax
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
lea ecx, [ebp - 0x30]
push ebx
push ecx
push ebx
push 0x20019
push ebx
push ebx
push ebx
push esi
push eax
call fcn.0042d836
pop ecx
pop ecx
push eax
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x422386
push 0x21e1ffff
push 0xea19ffff
mov dword [ebp - 0x2c], ebx
call fcn.0040af32
push 0x5c15ffff
push 0xa203ffff
mov byte [0x43ac7b], al
call fcn.0040afcb
push 0x129bffff
mov word [0x43ac90], ax
push dword [0x43acac]
call fcn.0040aeeb
mov esi, dword [0x435240]
add dword [0x43aca4], eax
add esp, 0x18
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
lea ecx, [ebp - 0x2c]
mov eax, esp
push ecx
lea ecx, [ebp - 0x18]
push ebx
push ecx
push ebx
push esi
push eax
call fcn.0042d836
pop ecx
pop ecx
push eax
push dword [ebp - 0x30]
push 0x14
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x422360
cmp dword [ebp - 0x18], edi
jne 0x422360
push dword [0x43acb0]
push 0xb10dffff
call fcn.0040b002
mov word [0x43ac8e], ax
mov eax, dword [ebp - 0x2c]
inc eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov dword [ebp - 0x10], eax
push 0xdc9ffff
movsx eax, word [0x43ac8e]
push eax
call fcn.0040afcb
push dword [0x43aca4]
mov byte [0x43ac7d], al
push 0xe3b1ffff
call fcn.0040aeeb
mov esi, dword [0x435240]
mov word [0x43ac92], ax
add esp, 0x1c
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
lea ecx, [ebp - 0x2c]
mov eax, esp
push ecx
lea ecx, [ebp - 0x18]
push dword [ebp - 0x10]
push ecx
push ebx
push esi
push eax
call fcn.0042d836
pop ecx
pop ecx
push eax
push dword [ebp - 0x30]
push 0x14
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x422357
movsx eax, word [0x43ac88]
push 0x13b3ffff
push eax
call fcn.0040b0ac
add byte [0x43ac7a], al
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x10]
pop ecx
pop ecx
mov byte [esi + eax], bl
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov cx, word [0x43ac8a]
push esi
dec cx
add ax, cx
mov word [0x43ac86], ax
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
lea ecx, [ebp - 0x54]
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_]
movsx eax, byte [0x43ac7e]
and eax, dword [0x43acbc]
mov word [0x43ac8a], di
mov dword [0x43acb4], eax
movsx eax, word [0x43ac90]
or eax, dword [0x43aca0]
add dword [0x43aca8], eax
push dword [ebp - 0x10]
call fcn.00430672
pop ecx
push 0x5171ffff
push dword [0x43acb8]
call fcn.0040b0f0
pop ecx
add word [0x43ac94], ax
pop ecx
push dword [ebp - 0x30]
push 0xf
call fcn.0040f588
pop ecx
call eax
movsx eax, byte [0x43ac80]
push eax
push dword [0x43ac9c]
call fcn.0040b037
add word [0x43ac92], ax
cmp dword [ebp - 0x4c], ebx
pop ecx
pop ecx
jne 0x42254f
push 0x4b
call fcn.0040f588
pop ecx
call eax
mov esi, eax
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
push 0x4a
mov word [0x43ac8e], ax
call fcn.0040f588
add esp, 0xc
call eax
push ebx
push ebx
push 0x1e
mov dword [ebp - 0x18], eax
call fcn.0040f588
pop ecx
call eax
mov dword [ebp - 0x2c], eax
movsx eax, word [0x43ac90]
push eax
mov byte [ebp - 4], 5
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 dword [ebp - 0x10], ebx
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 6
push eax
push 0x435618
push edi
push ebx
push 0x435608
push 0x1b
call fcn.0040f588
pop ecx
call eax
test eax, eax
jl 0x422527
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
lea edx, [ebp - 0xb4]
pop ecx
setne al
push edx
mov word [0x43ac82], ax
mov eax, dword [ebp - 0x10]
push dword [ebp - 0x18]
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0x40]
test eax, eax
jl 0x422527
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00407f63
pop ecx
pop ecx
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 7
push dword [ecx]
lea ecx, [ebp - 0x54]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 6
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 0x3de5ffff
push 0xcb0dffff
call fcn.0040b0f0
add dword [0x43acac], eax
or word [0x43ac84], 0xffff
sub dword [0x43ac98], 0x40480001
pop ecx
pop ecx
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 5
cmp eax, ebx
je 0x422538
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x2c], 0x80010106
mov byte [ebp - 4], 4
je 0x42254f
push 0x1f
call fcn.0040f588
pop ecx
call eax
push 0xffffffffffffffff
call dword [sym.imp.USER32.dll_IsCharAlphaA]
mov esi, dword [0x435244]
mov word [0x43ac8a], ax
xor eax, eax
cmp byte [0x43ac7c], bl
setne al
mov word [0x43ac92], ax
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
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
pop ecx
mov byte [0x43ac7b], al
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
pop ecx
lea ecx, [ebp - 0x28]
push dword [eax]
lea eax, [ebp - 0x54]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
mov esi, dword [0x435248]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
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
mov word [0x43ac86], ax
lea eax, [ebp - 0x40]
push 2
push eax
call fcn.00404f31
add esp, 0x10
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 8
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
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 esi, dword [0x43524c]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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 word [0x43ac8a]
or ax, 0xffff
sub ax, word [0x43ac88]
mov word [0x43ac94], ax
call fcn.00423a2f
mov esi, eax
call fcn.00423293
cmp eax, ebx
je 0x42273c
cmp esi, eax
jb 0x42273c
sub esi, eax
lea eax, [ebp - 0x40]
push esi
push eax
call fcn.004052c9
pop ecx
pop ecx
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 9
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
jmp 0x422772
mov esi, dword [0x435120]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
mov esi, dword [0x435250]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
lea eax, [ebp - 0x40]
push eax
call fcn.0042345f
pop ecx
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0xa
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
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 esi, dword [0x435254]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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 6
call fcn.00404dea
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00405410
add esp, 0xc
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0xb
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
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 esi, dword [0x435258]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x28]
push eax
push esi
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_]
movsx eax, byte [0x43ac81]
push 0xda8bffff
push eax
call fcn.0040b0ac
mov byte [0x43ac7e], al
push 0x9a8dffff
movsx eax, word [0x43ac88]
push eax
call fcn.0040aeeb
add dword [0x43ac98], eax
mov esi, str.Apr_30_2011
push esi
call sub.MSVCRT.dll_strlen
add esp, 0x14
lea ecx, [ebp - 0x28]
push eax
push esi
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 0x2c
push edi
lea ecx, [ebp - 0x28]
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_unsigned_int__char_]
xor eax, eax
cmp dword [0x43aca0], ebx
mov esi, str.22:59:00
setne al
add byte [0x43ac78], al
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
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_]
lea eax, [ebp - 0x28]
push eax
call fcn.0040bf80
mov dword [esp], 0x6d8bffff
push 0xbf07ffff
call fcn.0040b0ac
add word [0x43ac82], ax
movsx eax, word [0x43ac88]
push eax
push 0x66d5ffff
call fcn.0040b087
mov esi, dword [0x434e50]
add byte [0x43ac81], al
add esp, 0x10
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
lea ecx, [ebp - 0x28]
mov eax, esp
push ecx
push esi
push eax
call fcn.0042d836
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__
add esp, 0xc
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0xc
push dword [ecx]
lea ecx, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
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
mov esi, dword [ebp + 8]
add esp, 0x18
mov word [0x43ac92], ax
mov al, byte [ebp - 0x28]
push ebx
mov ecx, esi
mov byte [esi], al
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, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov ecx, esi
push dword [eax]
lea eax, [ebp - 0x28]
push ebx
push eax
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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
mov dword [ebp - 0x44], edi
push edi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 2
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 edi
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 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_]
push edi
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], bl
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 ecx, dword [ebp - 0xc]
lea esp, [ebp - 0xc0]
mov eax, esi
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret