Function at 0x10035390
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x100b4ff6
mov eax, dword fs:[0]
push eax
sub esp, 0xac
mov eax, dword [0x100e87b8]
xor eax, esp
mov dword [esp + 0xa8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100e87b8]
xor eax, esp
push eax
lea eax, [esp + 0xc0]
mov dword fs:[0], eax
mov edi, dword [esp + 0xd0]
mov ebp, dword [esp + 0xd4]
mov ebx, ecx
mov dword [esp + 0x18], ebx
call fcn.1005c940
mov esi, eax
test esi, esi
je 0x100353f7
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
mov ecx, esi
call edx
test eax, eax
jne 0x10035419
mov eax, dword [ebx + 0x2c]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x24]
push 0x311
push str..DBIsoTrack.cpp
push str.Unable_to_get_the_NB_interface___
push eax
call edx
add esp, 0x10
jmp 0x100356f1
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x108]
call eax
push eax
lea ecx, [esp + 0x18]
call fcn.1007f440
push 0x5c
lea ecx, [esp + 0x18]
mov dword [esp + 0xcc], 0
call fcn.1007eee0
push 0x5c
lea ecx, [esp + 0x18]
call fcn.10080140
push edi
lea ecx, [esp + 0x18]
call fcn.1007f620
push 0x100c26e8
lea ecx, [esp + 0x18]
call fcn.1007ee00
push eax
call dword [sym.imp.MSVCR80.dll__wfopen]
add esp, 8
test eax, eax
mov dword [esp + 0x1c], eax
je 0x100356c0
mov ecx, dword [ebp + 4]
push ecx
lea ecx, [esp + 0x6c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov ebx, dword [esp + 0xd8]
xor edi, edi
test ebx, ebx
mov byte [esp + 0xc8], 1
jbe 0x100354da
mov edx, dword [ebp + edi*8]
mov eax, dword [esi]
push 3
push edx
mov edx, dword [eax + 0x90]
mov ecx, esi
call edx
push eax
call dword [sym.imp.MSVCR80.dll__strnicmp]
add esp, 0xc
test eax, eax
je 0x100354cb
add edi, 1
cmp edi, ebx
jb 0x100354a1
jmp 0x100354da
mov eax, dword [ebp + edi*8 + 4]
push eax
lea ecx, [esp + 0x6c]
call dword [sym.imp.MSVCP80.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__::operator_char_const__]
cmp dword [esp + 0xdc], 0
je 0x10035601
mov ecx, dword [str.us.map]
push ecx
lea ecx, [esp + 0x88]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov bl, 2
mov byte [esp + 0xc8], bl
xor edi, edi
jmp 0x10035510
mov edx, dword [edi + 0x100e78d8]
mov eax, dword [esi]
push 3
push edx
mov edx, dword [eax + 0x90]
mov ecx, esi
call edx
push eax
call dword [sym.imp.MSVCR80.dll__strnicmp]
add esp, 0xc
test eax, eax
jne 0x10035547
mov eax, dword [edi + 0x100e78dc]
push eax
lea ecx, [esp + 0x88]
call dword [sym.imp.MSVCP80.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__::operator_char_const__]
add edi, 8
cmp edi, 0xa8
jb 0x10035510
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x34]
push str.LOCALE
push edx
call dword [sym.imp.MSVCP80.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
push str._nKEYBOARD
push eax
lea eax, [esp + 0x60]
push eax
mov byte [esp + 0xe0], 3
call dword [sym.imp.MSVCP80.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
lea ecx, [esp + 0x9c]
push ecx
push eax
lea edx, [esp + 0xc0]
push edx
mov byte [esp + 0xec], 4
call dword [sym.imp.MSVCP80.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0x24
lea ecx, [esp + 0x4c]
mov byte [esp + 0xc8], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x30]
mov byte [esp + 0xc8], 7
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea eax, [esp + 0xa0]
push eax
lea ecx, [esp + 0x6c]
call dword [sym.imp.MSVCP80.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__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0xa0]
mov byte [esp + 0xc8], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x84]
mov byte [esp + 0xc8], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x80], 0x10
mov eax, dword [esp + 0x6c]
jae 0x10035613
lea eax, [esp + 0x6c]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x7c]
push esi
push ecx
push 1
push eax
call dword [sym.imp.MSVCR80.dll_fwrite]
push esi
call dword [sym.imp.MSVCR80.dll_fclose]
add esp, 0x14
lea ecx, [esp + 0x20]
call fcn.10086790
lea ecx, [esp + 0x14]
mov byte [esp + 0xc8], 8
call fcn.1007ee00
push eax
lea ecx, [esp + 0x24]
call fcn.10085680
xor edx, edx
mov esi, eax
test esi, esi
setne dl
push 0x33d
push 0x100c5bb0
push edx
call fcn.10001230
add esp, 0xc
test esi, esi
je 0x10035682
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x20]
push eax
call fcn.10034e50
lea ecx, [esp + 0x20]
mov byte [esp + 0xc8], 1
call fcn.100864e0
lea ecx, [esp + 0x68]
mov byte [esp + 0xc8], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x14]
mov dword [esp + 0xc8], 0xffffffff
call fcn.1007ece0
mov eax, 1
jmp 0x100356f3
mov eax, dword [ebx + 0x2c]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x24]
push 0x343
push str..DBIsoTrack.cpp
push str.Unable_to_create_the_language_file___
push eax
call edx
add esp, 0x10
lea ecx, [esp + 0x14]
mov dword [esp + 0xc8], 0xffffffff
call fcn.1007ece0
xor eax, eax
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xa8]
xor ecx, esp
call fcn.100af9b2
add esp, 0xb8
ret 0x10