Function at 0x103492f
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x103fe1b
call fcn.0103c428
sub esp, 0xe0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
mov byte [ebp - 0x34], bl
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x4c]
call fcn.01034503
xor edi, edi
inc edi
mov byte [ebp - 4], 1
cmp dword [ebp - 0x4c], ebx
je 0x1035189
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 2
mov eax, dword [0x104952c]
mov dword [ebp - 0xd0], eax
mov esi, 0x1049118
mov ecx, esi
cmp eax, ebx
je 0x10349bf
mov dword [0x104952c], ebx
push ebx
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.0101228f
mov dword [ebp - 0x28], ebx
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
jmp 0x1035174
call fcn.01039f22
test eax, eax
je 0x1035174
push fcn.0103950d
push 0x1049118
lea eax, [ebp - 0x84]
push eax
call fcn.0103483d
mov byte [ebp - 4], 3
lea eax, [ebp - 0x84]
mov dword [ebp - 0xb4], eax
push 0xfffffffffffffff6
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov dword [ebp - 0x38], eax
cmp eax, 3
je 0x1034a3d
cmp eax, 0xffffffff
je 0x1034a3d
cmp eax, 0xf
je 0x1034a3d
push eax
mov ecx, esi
call fcn.01036122
test eax, eax
je 0x1034c2b
push 0x1005138
push 0x10058bc
call dword [sym.imp.msvcrt.dll__wfopen]
pop ecx
pop ecx
mov dword [ebp - 0x48], eax
cmp eax, ebx
je 0x1034c2b
mov byte [ebp - 0x34], 1
push dword [ebp - 0x48]
push dword [sym.imp.msvcrt.dll_fclose]
push dword [ebp - 0x34]
lea eax, [ebp - 0xec]
push eax
call fcn.01034879
mov byte [ebp - 4], 4
lea eax, [ebp - 0xec]
mov dword [ebp - 0xc4], eax
push 0x10058bc
push dword [sym.imp.KERNEL32.dll_DeleteFileW]
push dword [ebp - 0x34]
lea eax, [ebp - 0xdc]
push eax
call fcn.010348b6
mov byte [ebp - 4], 5
lea eax, [ebp - 0xdc]
mov dword [ebp - 0xcc], eax
cmp dword [ebp + 8], edi
jne 0x103509e
mov dword [ebp - 0x5c], edi
cmp dword [ebp - 0x38], 0x13
je 0x1034aac
push edi
mov ecx, esi
call fcn.01035240
mov dword [ebp - 0x5c], eax
push edi
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275f3
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x58], eax
lea ecx, [ebp - 0x1c]
call sub.framedyn.dll_public:_void___thiscall_CHString::constructor_void_
mov byte [ebp - 4], 6
cmp dword [ebp - 0x30], 2
jne 0x1034af9
push edi
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.0102768e
push eax
lea ecx, [ebp - 0x1c]
call fcn.0103c852
cmp dword [ebp - 0x30], ebx
je 0x1034b15
push edi
push ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275ce
push ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010276d5
mov dword [ebp - 0x78], eax
push ebx
push ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010276b0
push edi
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.0102735f
push 0x10058b0
lea ecx, [ebp - 0x54]
call fcn.01007727
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x18]
call fcn.01007fb3
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x54]
cmp ecx, ebx
je 0x1034b88
call fcn.01007c31
mov dword [ebp - 0x54], ebx
push 0x10058ac
lea ecx, [ebp - 0x64]
call fcn.010076ce
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x18]
call fcn.01008034
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x64]
cmp ecx, ebx
je 0x1034bb5
call fcn.01007c31
mov dword [ebp - 0x64], ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010273ad
push eax
lea ecx, [ebp - 0x68]
call fcn.01007727
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x18]
call fcn.01008034
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x68]
cmp ecx, ebx
je 0x1034bf3
call fcn.01007c31
mov dword [ebp - 0x68], ebx
push 0x10057e8
lea ecx, [ebp - 0x60]
call fcn.010076ce
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x18]
call fcn.01008034
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x60]
cmp ecx, ebx
je 0x1034c20
call fcn.01007c31
mov dword [ebp - 0x60], ebx
mov eax, dword [ebp - 0x18]
cmp eax, ebx
je 0x1034c6a
mov eax, dword [eax]
jmp 0x1034c6c
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov esi, eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 0xbc], esi
mov byte [ebp - 4], 2
lea eax, [ebp - 0x84]
push eax
call fcn.01034717
mov byte [ebp - 4], bl
cmp dword [ebp - 0x4c], edi
jne 0x1034c63
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, esi
jmp 0x10351e5
xor eax, eax
push ebx
push ebx
push ebx
push edi
push eax
call fcn.01032104
push edi
mov ecx, esi
call fcn.010356ff
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x20], ebx
push 0x1ffe
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
pop ecx
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x20], eax
cmp eax, ebx
je 0x1034e9d
lea eax, [ebp - 0x20]
mov dword [ebp - 0xa0], eax
push eax
push 0x1031d09
lea eax, [ebp - 0x74]
push eax
call fcn.01032c03
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x74]
mov dword [ebp - 0xb0], eax
cmp byte [ebp - 0x34], 1
jne 0x1034cd0
push dword [ebp - 0x48]
jmp 0x1034cd6
push dword [sym.imp.msvcrt.dll__iob]
push 0xffe
push dword [ebp - 0x20]
call dword [sym.imp.msvcrt.dll_fgetws]
add esp, 0xc
mov dword [ebp - 0x40], eax
cmp eax, ebx
je 0x1034e8b
mov dword [ebp - 0x44], ebx
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x20]
call fcn.01030dff
test eax, eax
je 0x1034e57
push dword [ebp - 0x44]
push 0x1031d09
lea eax, [ebp - 0x9c]
push eax
call fcn.010348f3
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0x3c], ebx
lea eax, [ebp - 0x3c]
mov dword [ebp - 0xb8], eax
push eax
push 0x1031d09
lea eax, [ebp - 0x90]
push eax
call fcn.01032c03
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x90]
mov dword [ebp - 0xe0], eax
push edi
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x44]
call fcn.01030d8f
test eax, eax
je 0x1034e03
push dword [ebp - 0x3c]
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::operator_unsigned_short_int_const__]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x90]
push eax
call fcn.01032a5c
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x9c]
push eax
call fcn.01032718
cmp byte [ebp - 0x34], 1
jne 0x1034db9
push ebx
push ebx
push ebx
push edi
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::begin_void_]
push eax
call fcn.01032104
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_unsigned_int___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::size_void_const]
mov dword [ebp - 0xc0], eax
lea edi, [eax - 1]
push edi
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::operator___unsigned_int_]
cmp word [eax], 0xa
jne 0x1034dee
push edi
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::operator___unsigned_int_]
mov word [eax], bx
mov byte [ebp - 4], 6
lea eax, [ebp - 0x74]
push eax
call fcn.01032a5c
xor edi, edi
inc edi
jmp 0x1034ecf
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
push 0xbbef
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.010123a1
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x90]
push eax
call fcn.01032a5c
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x9c]
push eax
call fcn.01032718
jmp 0x1034e8e
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
push 0xbbef
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.010123a1
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
jmp 0x1034e8e
mov dword [ebp - 0x2c], edi
mov byte [ebp - 4], 6
lea eax, [ebp - 0x74]
push eax
call fcn.01032a5c
jmp 0x1034ecf
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
push 0xbbef
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.010123a1
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
push ebx
mov ecx, esi
call fcn.010356ff
push ebx
push dword [ebp - 0x78]
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010276b0
cmp dword [ebp - 0x30], ebx
je 0x1034f0e
push edi
push dword [ebp - 0x30]
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275ce
push edi
mov ecx, esi
call fcn.010358fe
cmp dword [ebp - 0x2c], ebx
jne 0x1034fc5
push ebx
mov ecx, esi
call fcn.010356dc
mov ecx, esi
call fcn.010357a4
mov ecx, 0x1049530
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::begin_void_]
push eax
mov ecx, esi
call fcn.010386f9
mov dword [ebp - 0x28], eax
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x28], 2
je 0x1034fc5
push 1
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275f3
mov edi, eax
mov dword [ebp - 0x30], edi
cmp edi, 1
jne 0x1034f82
mov ecx, esi
call fcn.01035798
push eax
call fcn.010346cd
cmp edi, 2
je 0x1034f90
call fcn.010345ac
test eax, eax
je 0x1034fc5
call fcn.01034613
test eax, eax
je 0x1034fc5
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.01012c4b
cmp eax, 1
jne 0x103508a
cmp edi, 2
jne 0x1034feb
call fcn.010345ac
test eax, eax
jne 0x1034feb
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1c]
call sub.framedyn.dll_public:_void___thiscall_CHString::destructor_void_
cmp dword [ebp - 0x38], 0x13
je 0x1035141
push ebx
mov ecx, esi
call fcn.01035240
mov dword [ebp - 0x5c], eax
jmp 0x1035141
push ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.01012c34
cmp edi, 2
jne 0x103501e
push 1
push ebx
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.01027615
push 1
push dword [ebp - 0x58]
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275ce
cmp dword [ebp - 0x58], 2
jne 0x103508a
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x50]
call fcn.01007727
mov dword [ebp - 0xa4], eax
mov byte [ebp - 4], 0xe
mov eax, dword [eax]
cmp eax, ebx
je 0x103505d
mov eax, dword [eax]
jmp 0x103505f
xor eax, eax
push 1
push eax
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.01027615
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x50]
cmp ecx, ebx
je 0x103508a
call fcn.01007c31
mov dword [ebp - 0x50], ebx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1c]
call sub.framedyn.dll_public:_void___thiscall_CHString::destructor_void_
xor edi, edi
inc edi
jmp 0x1034aac
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
mov edi, 0x1049530
mov ecx, edi
call dword [sym.imp.msvcp60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::operator_unsigned_short_int_const__]
cmp dword [0x1049538], ebx
je 0x1035141
push 1
mov ecx, esi
call fcn.010358fe
mov ecx, edi
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::begin_void_]
mov dword [ebp - 0x24], eax
mov ecx, edi
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::end_void_]
cmp dword [ebp - 0x24], eax
je 0x10350ee
mov eax, dword [ebp - 0x24]
cmp word [eax], 0x20
je 0x10350ee
add dword [ebp - 0x24], 2
jmp 0x10350d2
mov ecx, edi
call dword [sym.imp.msvcp60.dll_public:_unsigned_short_int____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::end_void_]
cmp dword [ebp - 0x24], eax
je 0x1035141
push dword [ebp - 0x24]
mov ecx, esi
call fcn.010386f9
mov dword [ebp - 0x28], eax
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
push 1
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.0102995f
mov ecx, eax
call fcn.010275f3
mov dword [ebp - 0xac], eax
cmp eax, 1
jne 0x1035141
mov ecx, esi
call fcn.01035798
push eax
call fcn.010346cd
mov byte [ebp - 4], 4
lea eax, [ebp - 0xdc]
push eax
call fcn.01032718
mov byte [ebp - 4], 3
lea eax, [ebp - 0xec]
push eax
call fcn.01034733
mov byte [ebp - 4], 2
lea eax, [ebp - 0x84]
push eax
call fcn.01034717
xor edi, edi
inc edi
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x18]
cmp ecx, ebx
je 0x10351d0
call fcn.01007c31
mov dword [ebp - 0x18], ebx
jmp 0x10351d0
mov esi, 0x1049118
mov ecx, esi
call fcn.010352a8
mov ecx, eax
call fcn.01029957
mov ecx, eax
call fcn.0101288f
test eax, eax
je 0x10351be
push ebx
mov ecx, esi
call fcn.010352a8
push eax
mov ecx, esi
call fcn.0103529f
mov ecx, eax
call fcn.01026822
push ebx
mov ecx, esi
call fcn.010358fe
mov ecx, esi
call fcn.0103535b
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x4c], edi
jne 0x10351de
call dword [sym.imp.ole32.dll_CoUninitialize]
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret