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

Disassembly:
mov eax, 0x430da8
call fcn.0042e9c0
sub esp, 0x20
mov al, byte [ebp + 0xb]
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
push ebx
mov dword [ebp - 0x1c], 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 al, byte [ebp + 0xb]
lea ecx, [esi + 0x10]
push ebx
mov dword [ebp - 4], ebx
mov byte [ecx], 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 al, byte [ebp + 0xb]
lea ecx, [esi + 0x20]
push ebx
mov byte [ebp - 4], 1
mov byte [ecx], 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 al, byte [ebp + 0xb]
lea ecx, [esi + 0x30]
push ebx
mov byte [ebp - 4], 2
mov byte [ecx], 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 al, byte [ebp + 0xb]
lea ecx, [esi + 0x40]
push ebx
mov byte [ebp - 4], 3
mov byte [ecx], 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 al, byte [ebp + 0xb]
lea ecx, [esi + 0x50]
push ebx
mov byte [ebp - 4], 4
mov byte [ecx], 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_]
push 0xcd7bffff
push 0x6311ffff
mov byte [ebp - 4], 5
call fcn.0040a8f9
add byte [0x438c20], al
pop ecx
movsx eax, word [0x438c2e]
add eax, 0x54e1ffff
pop ecx
movsx ecx, byte [0x438c20]
mov dword [0x438c3c], eax
mov edi, dword [0x4331fc]
movsx eax, word [0x438c30]
imul eax, ecx
mov word [0x438c2e], 0xfffe
mov dword [0x438c58], eax
mov al, byte [edi]
mov dword [ebp - 0x10], ebx
sub al, 3
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.0042e9e0
mov eax, esp
push edi
push eax
call fcn.0042bd2b
mov edi, eax
push edi
call sub.MSVCRT.dll_strlen
add esp, 0xc
push eax
push ebx
push edi
mov edi, dword [ebp + 8]
mov ecx, edi
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
mov dword [ebp - 0x14], eax
movsx eax, word [0x438c34]
push eax
push 0x64c1ffff
call fcn.0040a96f
pop ecx
mov dword [0x438c54], eax
pop ecx
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
push 1
mov word [0x438c2e], ax
pop eax
mov ecx, edi
mov dword [0x438c4c], eax
push eax
lea eax, [ebp + 0xb]
push ebx
push eax
mov byte [ebp + 0xb], 0x2f
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
push dword [0x438c5c]
mov dword [ebp + 8], eax
movsx eax, word [0x438c2a]
add eax, 0x2d89ffff
push 0xf169ffff
mov dword [0x438c58], eax
call fcn.0040a96f
add word [0x438c28], ax
mov eax, dword [ebp - 0x14]
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]
cmp eax, dword [ecx]
je 0x42b321
cmp dword [ebp + 8], eax
jbe 0x42b321
movsx eax, word [0x438c34]
push 0x700bffff
push eax
call fcn.0040aac5
mov byte [0x438c18], al
movsx eax, byte [0x438c1d]
push eax
movsx eax, byte [0x438c21]
push eax
call fcn.0040a96f
push dword [0x438c54]
add byte [0x438c19], al
push 0xaf01ffff
call fcn.0040aac5
mov byte [0x438c1e], al
mov eax, dword [ebp - 0x14]
add esp, 0x18
add eax, 3
mov dword [ebp + 8], eax
mov ecx, edi
push eax
lea eax, [ebp - 0x2c]
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__::substr_unsigned_int__unsigned_int_]
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], 6
push dword [ecx]
mov ecx, esi
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
cmp byte [0x438c18], bl
je 0x42b2ef
cmp byte [0x438c1a], bl
je 0x42b2ef
push 1
pop eax
jmp 0x42b2f1
xor eax, eax
push dword [0x438c3c]
add byte [0x438c1c], al
or word [0x438c2c], 0xffff
push 0xe167ffff
call fcn.0040a96f
pop ecx
mov dword [0x438c4c], eax
mov eax, dword [ebp + 8]
pop ecx
mov dword [ebp - 0x10], eax
jmp 0x42b476
or word [0x438c32], 0xffff
push 0x438360
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push ebx
push 0x438360
mov ecx, edi
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
movsx ecx, word [0x438c34]
sub ecx, dword [0x438c58]
mov dword [ebp - 0x14], eax
mov dword [0x438c5c], 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]
cmp eax, dword [ecx]
je 0x42b43a
cmp dword [ebp + 8], eax
jbe 0x42b43a
movsx eax, word [0x438c32]
push eax
push 0x95ffff
movsx eax, word [0x438c30]
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, dword [0x438c44]
mov word [0x438c2c], ax
mov eax, dword [0x438c5c]
lea ecx, [ecx + eax - 0x778c0001]
mov dword [0x438c44], ecx
xor ecx, ecx
cmp eax, ebx
mov eax, dword [ebp - 0x14]
setne cl
inc eax
mov dword [0x438c48], ecx
mov dword [ebp + 8], eax
push eax
lea eax, [ebp - 0x2c]
push ebx
push eax
mov ecx, edi
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__::substr_unsigned_int__unsigned_int_]
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]
mov ecx, esi
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 0xf85dffff
push 0x5f9fffff
call fcn.0040a8f9
push dword [0x438c4c]
mov byte [0x438c18], al
push 0x7c97ffff
call fcn.0040aa83
push dword [0x438c48]
mov byte [0x438c1e], al
push 0xadabffff
call fcn.0040a9de
add esp, 0x18
add byte [0x438c1d], al
mov eax, dword [ebp + 8]
jmp 0x42b319
mov eax, dword [0x433030]
mov al, byte [eax]
sub al, 3
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.0042e9e0
mov eax, esp
push dword [0x433030]
push eax
call fcn.0042bd2b
push eax
mov dword [ebp + 8], eax
call sub.MSVCRT.dll_strlen
add esp, 0xc
mov ecx, esi
push eax
push dword [ebp + 8]
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, word [0x438c32]
push eax
movsx eax, word [0x438c28]
push eax
call fcn.0040ab0e
add word [0x438c34], ax
pop ecx
pop ecx
lea eax, [ebp + 0xb]
push 1
mov ecx, edi
push dword [ebp - 0x10]
mov byte [ebp + 0xb], 0x2f
push eax
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
mov dword [ebp - 0x14], eax
call dword [sym.imp.USER32.dll_GetInputState]
add byte [0x438c21], al
push 1
push dword [ebp - 0x10]
lea eax, [ebp + 0xb]
mov ecx, edi
mov byte [0x438c1f], bl
push eax
mov byte [ebp + 0xb], 0x3a
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
push dword [0x438c5c]
mov dword [ebp - 0x18], eax
push dword [0x438c44]
call fcn.0040a9a5
add byte [0x438c1d], al
mov al, byte [0x438c4c]
add byte [0x438c19], al
push 0xedb9ffff
movsx eax, byte [0x438c1d]
push eax
call fcn.0040a9de
add dword [0x438c54], eax
add esp, 0x10
lea eax, [ebp + 0xb]
mov ecx, edi
push 1
mov byte [ebp + 0xb], 0x40
push dword [ebp - 0x10]
push eax
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
mov dword [ebp + 8], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
add byte [0x438c20], al
push 0xa62bffff
push 0x6c49ffff
call fcn.0040ab0e
add byte [0x438c1e], al
push 0x46cdffff
movsx eax, word [0x438c22]
push eax
call fcn.0040aa4f
add word [0x438c22], ax
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
add esp, 0x10
mov eax, dword [eax]
cmp dword [ebp - 0x18], eax
je 0x42b69f
mov ecx, dword [ebp + 8]
cmp ecx, eax
je 0x42b69f
cmp dword [ebp - 0x18], ecx
jae 0x42b69f
cmp ecx, dword [ebp - 0x14]
jb 0x42b59a
cmp dword [ebp - 0x14], eax
jne 0x42b69f
movsx ax, byte [0x438c1e]
sub word [0x438c2c], ax
push 0xdbf5ffff
push 0xf583ffff
call fcn.0040a9a5
pop ecx
mov byte [0x438c21], al
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [0x438c38], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x10]
mov ecx, edi
push eax
lea eax, [ebp - 0x2c]
push dword [ebp - 0x10]
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__::substr_unsigned_int__unsigned_int_]
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, [esi + 0x10]
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 al, byte [0x438c28]
inc dword [0x438c5c]
dec al
mov ecx, dword [0x438c38]
mov byte [0x438c20], al
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x10], eax
movsx eax, byte [0x438c1e]
lea eax, [ecx + eax + 0x54bffff]
mov dword [0x438c38], eax
movsx eax, word [0x438c22]
push eax
push 0x8b65ffff
call fcn.0040a96f
add byte [0x438c18], al
mov eax, dword [ebp + 8]
sub eax, dword [ebp - 0x10]
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push dword [ebp - 0x10]
mov ecx, edi
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__::substr_unsigned_int__unsigned_int_]
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, [esi + 0x20]
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 [ebp + 8]
add dword [0x438c40], 0x2c21ffff
inc eax
mov dword [ebp - 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx eax, ax
push 0xb69bffff
push 0x117fffff
mov dword [0x438c4c], eax
call fcn.0040aa4f
pop ecx
mov byte [0x438c20], al
mov eax, dword [ebp - 0x14]
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]
cmp eax, dword [ecx]
je 0x42b6d3
sub eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x2c]
push dword [ebp - 0x10]
mov ecx, edi
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__::substr_unsigned_int__unsigned_int_]
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, [esi + 0x30]
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 [0x438c1d]
push eax
movsx eax, byte [0x438c20]
push eax
call fcn.0040a96f
add byte [0x438c1f], al
mov al, byte [0x438c1f]
add byte [0x438c1a], 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
pop ecx
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [eax]
je 0x42b8d4
push dword [0x438c54]
push 0xeeafffff
call fcn.0040ab0e
add word [0x438c2c], ax
mov eax, dword [ebp - 0x14]
inc dword [0x438c54]
push 0x2c67ffff
push dword [0x438c44]
mov dword [ebp - 0x10], eax
call fcn.0040a96f
add esp, 0x10
mov dword [0x438c54], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
add dword [0x438c50], eax
push 0x2a9ffff
movsx eax, word [0x438c2c]
push eax
call fcn.0040ab0e
add byte [0x438c18], al
push 0x43835c
call sub.MSVCRT.dll_strlen
add esp, 0xc
mov ecx, edi
push eax
push dword [ebp - 0x14]
push 0x43835c
call dword [sym.imp.MSVCP60.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_first_of_char_const___unsigned_int__unsigned_int_const]
mov cx, word [0x438c2c]
mov dword [ebp - 0x14], eax
sub word [0x438c24], cx
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
je 0x42b7dc
sub eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x2c]
push dword [ebp - 0x10]
mov ecx, edi
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__::substr_unsigned_int__unsigned_int_]
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, [esi + 0x40]
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 0xb373ffff
push 0xa3dfffff
call fcn.0040aa4f
pop ecx
mov word [0x438c34], ax
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
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [eax]
je 0x42b93d
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx eax, ax
add dword [0x438c40], eax
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx eax, ax
add dword [0x438c40], eax
movsx eax, byte [0x438c1c]
push eax
movsx eax, word [0x438c26]
push eax
call fcn.0040a96f
pop ecx
mov byte [0x438c21], 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
mov ecx, edi
push dword [eax]
lea eax, [ebp - 0x2c]
push dword [ebp - 0x14]
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__::substr_unsigned_int__unsigned_int_]
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, [esi + 0x50]
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 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
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 0x1237ffff
push 0xa01bffff
call fcn.0040a8f9
add dword [0x438c38], eax
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
add dword [0x438c48], eax
jmp 0x42b93d
mov al, byte [0x438c54]
mov edi, 0x4382c4
and al, byte [0x438c21]
push edi
add byte [0x438c21], al
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push edi
lea ecx, [esi + 0x40]
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_]
push 0xcc95ffff
push 0x154dffff
call fcn.0040a96f
push dword [0x438c38]
mov dword [0x438c3c], eax
xor eax, eax
cmp dword [0x438c50], ebx
push dword [0x438c54]
setne al
add word [0x438c2e], ax
call fcn.0040a96f
add esp, 0x10
add word [0x438c2c], ax
movsx eax, word [0x438c24]
push eax
push 0xc6dbffff
call fcn.0040a96f
push dword [0x438c3c]
mov word [0x438c2c], ax
push 0xdd91ffff
call fcn.0040a9de
mov ecx, dword [ebp - 0xc]
add esp, 0x10
lea esp, [ebp - 0x38]
mov dword [0x438c50], eax
mov eax, esi
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 4