Function at 0x10012e00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x13a4
call fcn.1003d710
push ebx
push ebp
push esi
push edi
mov ecx, 0xd
xor eax, eax
lea edi, [esp + 0x71]
mov byte [esp + 0x70], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0xff
xor eax, eax
lea edi, [esp + 0x7e5]
mov byte [esp + 0x7e4], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ebp, dword [esp + 0x13c0]
xor esi, esi
stosb byte es:[edi], al
mov eax, dword [esp + 0x13b8]
mov dword [esp + 0x14], esi
cmp eax, esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
jne 0x10012e73
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
mov ecx, dword [0x10071a48]
mov eax, dword [eax + 0x54]
push ecx
push eax
call fcn.10012130
add esp, 8
cmp eax, esi
mov dword [esp + 0x10], eax
jne 0x10012e9f
pop edi
pop esi
pop ebp
mov ax, 2
pop ebx
add esp, 0x13a4
ret 0x18
cmp ebp, esi
jne 0x10012eb4
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
mov di, word [esp + 0x13cc]
cmp di, si
ja 0x10012ed2
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
mov cx, word [eax + 0x44]
cmp cx, si
je 0x100138a1
cmp cx, 0xffff
je 0x100138a1
mov dx, word [eax + 0x1bc]
mov esi, dword [esp + 0x13bc]
cmp si, dx
jae 0x10013890
mov cl, byte [eax + 0x69c]
test cl, cl
je 0x1001302a
cmp di, 0x10
ja 0x10012f26
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
cmp dword [eax + 0x1cc], 8
jne 0x10012fb4
mov eax, dword [esp + 0x13cc]
cmp di, 0x20
jb 0x10012f93
and eax, 0xffff
and eax, 0x80000001
jns 0x10012f51
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x10012f67
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
shr di, 1
mov eax, dword [esp + 0x13c0]
mov word [esp + 0x13cc], di
mov ebx, dword [esp + 0x13cc]
mov ebp, ebx
mov dword [esp + 0x18], ebx
and ebp, 0xffff
add ebp, eax
jmp 0x10013013
mov edi, dword [esp + 0x13c0]
mov ecx, eax
and ecx, 0xffff
add eax, 0xfffffff0
mov dword [esp + 0x18], eax
mov ebx, 0x10
lea ebp, [ecx + edi - 0x10]
jmp 0x10013009
cmp di, 0x20
jb 0x10012ffc
mov eax, dword [esp + 0x13cc]
and eax, 0xffff
and eax, 0x80000001
jns 0x10012fd2
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x10012fe8
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x13a4
ret 0x18
shr di, 1
mov word [esp + 0x13cc], di
mov ebx, dword [esp + 0x13cc]
jmp 0x10013013
mov ebx, dword [esp + 0x13cc]
add ebx, 0xfff0
mov dword [esp + 0x13cc], ebx
mov di, bx
cmp di, 0x38
jbe 0x10013035
pop edi
pop esi
pop ebp
mov ax, 0x14
pop ebx
add esp, 0x13a4
ret 0x18
mov ebx, dword [esp + 0x13cc]
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x1dc]
test ecx, ecx
je 0x100132fd
mov ecx, dword [eax + 0x1cc]
cmp ecx, 5
je 0x10013175
cmp ecx, 7
je 0x10013175
cmp ecx, 8
jne 0x100132fd
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x7e4]
lea edi, [eax + 0x1e0]
push ecx
push edx
push edi
mov dword [esp + 0x28], 0x400
mov ax, word [eax + 0x1bc]
push ebx
push ebp
push esi
push eax
call fcn.100102d0
test ax, ax
jne 0x100138a5
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x13bc]
lea edx, [esp + 0x7e8]
push eax
push edx
push eax
lea eax, [esp + 0x7f4]
push eax
push ecx
call fcn.10014300
test ax, ax
jne 0x100138a5
lea edx, [esp + 0x7e4]
push edi
push edx
call fcn.10010030
test ax, ax
jne 0x100138a5
mov eax, dword [esp + 0x13c8]
mov edi, dword [esp + 0x13c4]
mov esi, dword [esp + 0x18]
push eax
push edi
lea ecx, [esp + 0x7ec]
push esi
push ecx
call fcn.10010470
mov ecx, esi
mov esi, ebp
and ecx, 0xffff
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 0x14], eax
jne 0x10013156
mov eax, dword [esp + 0x13c4]
test eax, eax
je 0x1001313c
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x13c0]
push ecx
push eax
push edx
call fcn.1000bb30
add esp, 0xc
mov eax, dword [esp + 0x13c8]
test eax, eax
je 0x10013156
push ebx
push eax
mov eax, dword [esp + 0x13c8]
push eax
call fcn.1000feb0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push ecx
push edx
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
test byte [eax + 0x1d0], 4
je 0x100132fd
lea edi, [eax + 0x1e0]
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x370]
push 0x50
push eax
lea eax, [esp + 0x3c]
push edi
push eax
lea eax, [esp + 0x38]
push eax
mov eax, dword [esp + 0x13d8]
push ebx
push eax
push esi
push edx
push ecx
call fcn.1000e7c0
mov edx, eax
test dx, dx
jne 0x100132e2
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x31c]
push ecx
mov ecx, dword [esp + 0x2c]
push 0x50
push edx
mov edx, dword [esp + 0x13c4]
lea eax, [esp + 0x378]
push 0x50
push eax
push ecx
push edx
call fcn.10013e10
mov edx, eax
test dx, dx
jne 0x10013233
mov eax, dword [esp + 0x13c8]
mov ecx, dword [esp + 0x13c4]
mov edx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x28]
push ebx
push ecx
mov ecx, dword [esp + 0x13cc]
push edx
push eax
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x334]
push edi
push edx
mov edx, dword [ecx + 0x1cc]
push eax
push edx
call fcn.1000ec10
mov edx, eax
cmp dx, 0x6d
je 0x10013243
cmp dx, 2
jne 0x100132e2
mov ebp, dword [esp + 0x13c0]
and ebx, 0xffff
mov ecx, ebx
mov esi, ebp
mov eax, ecx
lea edi, [esp + 0x70]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x24]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
sub ecx, ebx
test ecx, ecx
jle 0x1001328d
mov esi, ecx
lea edi, [esp + ebx + 0x70]
mov eax, 0xa5a5a5a5
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x13c4]
test edi, edi
je 0x100132a8
mov ecx, ebx
mov esi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x13c8]
test ecx, ecx
je 0x100132da
cmp eax, 4
jb 0x100132c0
mov eax, dword [esp + eax + 0x6c]
mov dword [esp + 0x20], eax
mov ax, word [esp + 0x22]
mov word [esp + 0x14], ax
mov ax, word [esp + 0x20]
mov word [esp + 0x16], ax
mov eax, dword [esp + 0x14]
mov dword [ecx], eax
cmp dx, 2
jne 0x100132e2
xor edx, edx
mov ecx, dword [esp + 0x10]
push ecx
push edx
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov ecx, 0xfa
xor eax, eax
lea edi, [esp + 0x3fc]
xor edx, edx
rep stosd dword es:[edi], eax
mov ecx, 0xfa
lea edi, [esp + 0xfcc]
rep stosd dword es:[edi], eax
mov ecx, 0xfa
lea edi, [esp + 0xbe4]
rep stosd dword es:[edi], eax
xor ecx, ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x44], ecx
lea edi, [esp + 0x2a8]
mov dword [esp + 0x48], ecx
mov ecx, 0x1c
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
rep stosd dword es:[edi], eax
mov dword [esp + 0x34], eax
mov ecx, 0x1c
mov dword [esp + 0x38], eax
lea edi, [esp + 0x15c]
rep stosd dword es:[edi], eax
mov ecx, 0x1c
lea edi, [esp + 0x1d0]
rep stosd dword es:[edi], eax
mov dword [esp + 0x68], edx
mov ecx, 0x1c
lea edi, [esp + 0xa8]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], eax
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x10]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], edx
mov ebp, dword [sym.imp.MSVCR100.dll_sprintf]
movsx ecx, word [edi + 0x70]
lea eax, [esp + 0x58]
mov edx, dword [edi + ecx*4 + 0x48]
push edx
push 0x1005f734
push eax
call ebp
xor ecx, ecx
lea edx, [esp + 0x4c]
mov cx, word [edi + 0x44]
push ecx
push 0x1005f734
push edx
call ebp
and esi, 0xffff
lea eax, [esp + 0x64]
push esi
push 0x1005f734
push eax
call ebp
mov esi, dword [esp + 0x13e4]
and ebx, 0xffff
mov ecx, ebx
lea edi, [esp + 0x2cc]
mov edx, ecx
lea eax, [esp + 0xcc]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
push ebx
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2d4]
push ecx
call fcn.100069f0
push ebx
lea edx, [esp + 0x68]
push 0x1005f734
push edx
call ebp
mov ecx, dword [esp + 0x13f4]
add esp, 0x3c
lea eax, [esp + 0x3bc]
push 0x40
push eax
push ecx
call fcn.10009f00
test ax, ax
jne 0x100138a5
lea edx, [esp + 0x34]
lea eax, [esp + 0xa8]
push edx
lea ecx, [esp + 0x50]
push eax
lea edx, [esp + 0x48]
push ecx
lea eax, [esp + 0x64]
push edx
push eax
push 5
push 0x1005f72c
call fcn.10019ee0
mov edx, eax
add esp, 0x1c
test edx, edx
jne 0x1001349d
mov ecx, dword [esp + 0x10]
push ecx
push 0x4a
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
lea ebp, [esp + 0xfcc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push edx
mov eax, ecx
mov esi, edi
mov edi, ebp
mov ebp, dword [sym.imp.MSVCR100.dll_free]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call ebp
lea ecx, [esp + 0x68]
lea edx, [esp + 0xfd0]
push ecx
push edx
push str.query
push 3
push 0x1005f61c
call fcn.10019ee0
mov edx, eax
add esp, 0x18
test edx, edx
jne 0x1001350f
mov eax, dword [esp + 0x10]
push eax
push 0x4a
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
lea esi, [esp + 0xbe4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x14], esi
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
push edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call ebp
lea ecx, [esp + 0xbe8]
push ecx
call fcn.10019fc0
mov edx, eax
add esp, 8
test edx, edx
jne 0x10013570
mov edx, dword [esp + 0x10]
push edx
push 0x4a
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
lea esi, [esp + 0xbe4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x14], esi
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
push edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x400]
push ecx
lea eax, [esp + 0xbec]
push edx
push eax
call fcn.10017cc0
add esp, 0x10
test ax, ax
je 0x100135dc
mov ecx, dword [esp + 0x10]
push ecx
push eax
call fcn.1000a4a0
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
lea edx, [esp + 0x3fc]
push edx
call fcn.10019cc0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1001360e
mov eax, dword [esp + 0x10]
push eax
push 0x42
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
lea ecx, [esp + 0x3fc]
lea edx, [esp + 0x244]
push ecx
lea eax, [esp + 0x120]
push edx
push eax
push esi
push 3
push 0x1005f61c
call fcn.10019b20
push esi
mov edi, eax
call ebp
add esp, 0x1c
test di, di
je 0x1001365c
mov ecx, dword [esp + 0x10]
push ecx
push 0x42
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov byte [esp + 0x15b], 0
mov byte [esp + 0x2a7], 0
mov edi, str.error
lea esi, [esp + 0x11c]
mov dl, byte [esi]
mov cl, byte [edi]
mov al, dl
cmp dl, cl
jne 0x100136a0
test al, al
je 0x1001369c
mov cl, byte [esi + 1]
mov dl, byte [edi + 1]
mov al, cl
cmp cl, dl
jne 0x100136a0
add esi, 2
add edi, 2
test al, al
jne 0x10013678
xor eax, eax
jmp 0x100136a5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x100137b0
lea edx, [esp + 0x244]
push edx
call dword [sym.imp.MSVCR100.dll_atoi]
mov ebp, eax
add esp, 4
cmp bp, 0x6d
jne 0x10013795
mov ecx, 0x1c
xor eax, eax
lea edi, [esp + 0xa8]
lea edx, [esp + 0x3fc]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1d0]
lea ecx, [esp + 0xa8]
push eax
push ecx
push edx
push 2
push 0x1005f72c
call fcn.10019b20
add esp, 0x14
test ax, ax
je 0x10013722
mov eax, dword [esp + 0x10]
push eax
push 0x42
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
lea ecx, [esp + 0x15c]
lea edx, [esp + 0xa8]
push ecx
push edx
call fcn.10006a80
mov edi, dword [esp + 0x13cc]
add esp, 8
test edi, edi
je 0x1001375c
mov ecx, ebx
lea esi, [esp + 0x15c]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x13c8]
test esi, esi
je 0x1001377a
lea ecx, [esp + 0x1d0]
push ecx
call dword [sym.imp.MSVCR100.dll_atol]
add esp, 4
mov dword [esi], eax
mov edx, dword [esp + 0x10]
lea esi, [edx + 0x80]
push esi
call dword [sym.imp.MSVCR100.dll__time32]
mov eax, dword [esi]
add esp, 4
add eax, 0x78
mov dword [esi], eax
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
mov ecx, 0x1c
xor eax, eax
lea edi, [esp + 0xa8]
lea edx, [esp + 0xa8]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1d0]
lea eax, [esp + 0x3fc]
push ecx
push edx
push eax
push 2
push 0x1005f72c
call fcn.10019b20
add esp, 0x14
test ax, ax
je 0x10013808
mov ecx, dword [esp + 0x10]
push ecx
push 0x42
call fcn.1000a580
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
lea edx, [esp + 0x15c]
lea eax, [esp + 0xa8]
push edx
push eax
call fcn.10006a80
mov edi, dword [esp + 0x13cc]
add esp, 8
test edi, edi
je 0x10013842
mov ecx, ebx
lea esi, [esp + 0x15c]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x13c8]
test esi, esi
je 0x10013860
lea eax, [esp + 0x1d0]
push eax
call dword [sym.imp.MSVCR100.dll_atol]
add esp, 4
mov dword [esi], eax
mov edi, dword [esp + 0x10]
lea esi, [edi + 0x80]
push esi
call dword [sym.imp.MSVCR100.dll__time32]
mov ebx, dword [esi]
push edi
add ebx, 0x78
push 0
mov dword [esi], ebx
call fcn.1000a580
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18
pop edi
pop esi
pop ebp
mov ax, 5
pop ebx
add esp, 0x13a4
ret 0x18
mov ax, 0x47
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x13a4
ret 0x18