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

Disassembly:
push 0xffffffffffffffff
push 0x1006da6a
mov eax, dword fs:[0]
push eax
sub esp, 0x290
mov eax, dword [0x1008c288]
xor eax, esp
mov dword [esp + 0x28c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1008c288]
xor eax, esp
push eax
lea eax, [esp + 0x2a4]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x2b4]
mov eax, dword [esp + 0x2bc]
xor edi, edi
test byte [0x1008f76c], 1
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], eax
lea ebp, [edi + 7]
jne 0x1001a899
or dword [0x1008f76c], 1
push 0x18
push str._diouxXDOUeEfFgGaACcSspn
mov ecx, 0x1008f750
mov dword [esp + 0x2b4], edi
mov dword [0x1008f768], ebp
mov dword [0x1008f764], edi
mov word [0x1008f754], di
call fcn.10003870
push 0x10074ce0
call fcn.10028e44
add esp, 4
mov dword [esp + 0x2ac], 0xffffffff
mov eax, dword [ebx + 0x18]
cmp eax, 8
lea esi, [ebx + 4]
jb 0x1001a8a8
mov ecx, dword [esi]
jmp 0x1001a8aa
mov ecx, esi
cmp eax, 8
mov edx, dword [ebx + 0x14]
lea ecx, [ecx + edx*2]
mov edx, 0xfffffffe
jb 0x1001a8bc
mov esi, dword [esi]
push ecx
push edx
mov eax, edx
push esi
push eax
lea eax, [esp + 0x4c]
push eax
mov ecx, ebx
call fcn.10003950
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edi
mov word [esp + 0x68], di
mov dword [esp + 0x2ac], 1
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x2b8]
cmp dword [eax + 0x18], 8
mov byte [esp + 0x2ac], 2
jb 0x1001a904
mov esi, dword [eax + 4]
jmp 0x1001a907
lea esi, [eax + 4]
mov ecx, 0xfffffffe
mov dword [esp + 0x1c], ecx
mov edx, dword [eax + 0x18]
cmp edx, 8
mov dword [esp + 0x20], esi
mov dword [esp + 0x30], edx
jb 0x1001a925
mov edx, dword [eax + 4]
jmp 0x1001a928
lea edx, [eax + 4]
mov edi, dword [eax + 0x14]
add edi, edi
mov ebp, ecx
add edx, edi
mov dword [esp + 0x4c], ebp
cmp esi, edx
je 0x1001a944
cmp word [esi], 0x25
je 0x1001a944
add esi, 2
jmp 0x1001a935
cmp dword [esp + 0x30], 8
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], esi
lea edx, [eax + 4]
jb 0x1001a95a
mov ecx, dword [edx]
jmp 0x1001a95c
mov ecx, edx
add ecx, edi
cmp esi, ecx
je 0x1001b00a
cmp word [esi + 2], 0x25
jne 0x1001a9d4
mov ecx, dword [ebx + 0x18]
cmp ecx, 8
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], esi
lea ebp, [ebx + 4]
jb 0x1001a985
mov edx, dword [ebp]
jmp 0x1001a987
mov edx, ebp
mov eax, dword [ebx + 0x14]
add eax, eax
add edx, eax
cmp ecx, 8
mov edi, 0xfffffffe
jb 0x1001a99d
mov ecx, dword [ebp]
jmp 0x1001a99f
mov ecx, ebp
lea ebp, [esi + 2]
push ebp
mov ebp, dword [esp + 0x48]
push ebp
mov ebp, dword [esp + 0x28]
push ebp
mov ebp, dword [esp + 0x28]
push ebp
push edx
add eax, ecx
push edi
mov ecx, edi
push eax
push ecx
mov ecx, ebx
call fcn.10010fc0
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x2b8]
add esi, 4
jmp 0x1001a90c
mov eax, dword [0x1008f768]
cmp eax, 8
mov ecx, dword [0x1008f754]
mov ebp, ecx
jae 0x1001a9eb
mov ebp, 0x1008f754
cmp eax, 8
mov edx, dword [0x1008f764]
lea ebp, [ebp + edx*2]
mov ebx, 0xfffffffe
mov dword [esp + 0x34], ecx
jae 0x1001aa0b
mov dword [esp + 0x34], 0x1008f754
mov eax, dword [esp + 0x2b8]
add eax, 4
cmp dword [esp + 0x30], 8
mov edx, ebx
jb 0x1001aa20
mov eax, dword [eax]
push ebp
push ebx
mov ebx, dword [esp + 0x3c]
push ebx
push edx
add eax, edi
push eax
mov eax, dword [esp + 0x60]
mov ecx, edx
push ecx
push esi
push eax
lea ecx, [esp + 0x7c]
push ecx
call fcn.100193b0
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x2dc]
add esp, 0x24
add eax, 4
cmp dword [esp + 0x30], 8
mov dword [esp + 0x24], edx
jb 0x1001aa61
mov eax, dword [eax]
add eax, edi
cmp dword [esp + 0x28], eax
je 0x1001b04f
mov eax, dword [esp + 0x18]
mov ebx, dword [eax + 0x18]
cmp ebx, 8
lea ecx, [eax + 4]
jb 0x1001aa80
mov edx, dword [ecx]
jmp 0x1001aa82
mov edx, ecx
mov eax, dword [eax + 0x14]
add eax, eax
add edx, eax
cmp ebx, 8
mov edi, 0xfffffffe
jb 0x1001aa95
mov ecx, dword [ecx]
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + 0x20]
push esi
push ebp
push ebx
mov ebx, dword [esp + 0x28]
push ebx
push edx
add eax, ecx
push edi
mov ecx, edi
mov edi, dword [esp + 0x30]
push eax
push ecx
mov ecx, edi
call fcn.10010fc0
mov ecx, dword [esp + 0x28]
cmp word [ecx], 0x40
jne 0x1001ab3d
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
add eax, 4
test ecx, ecx
mov dword [esp + 0x14], eax
je 0x1001ab2f
mov edx, dword [ecx]
mov edx, dword [edx + 0x38]
lea eax, [esp + 0x80]
push eax
call edx
push 0xffffffffffffffff
push 0
add eax, 4
push eax
mov ecx, edi
mov byte [esp + 0x2b8], 3
call fcn.10005f60
cmp dword [esp + 0x9c], 8
mov byte [esp + 0x2ac], 2
mov dword [esp + 0x80], vtable.Idis::G2String.0
jb 0x1001ad01
mov eax, dword [esp + 0x88]
push eax
call sub.MFC80U.DLL_Ordinal_764
add esp, 4
jmp 0x1001ad01
push 6
push 0x10077bd0
mov ecx, edi
jmp 0x1001acfc
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x40], eax
add eax, 2
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x7c]
cmp eax, 8
mov ecx, edi
jae 0x1001ab63
lea ecx, [esp + 0x68]
cmp eax, 8
mov edx, dword [esp + 0x78]
lea ecx, [ecx + edx*2]
mov edx, 0xfffffffe
jae 0x1001ab78
lea edi, [esp + 0x68]
push dword [esp + 0x40]
mov eax, edx
push ebx
push esi
push ebp
push ecx
push edx
push edi
push eax
lea ecx, [esp + 0x84]
call fcn.10010fc0
mov eax, dword [esp + 0x28]
mov ecx, eax
movzx eax, word [eax]
sub ecx, esi
sar ecx, 1
cmp ax, 0x64
je 0x1001af45
cmp ax, 0x69
je 0x1001af45
cmp ax, 0x6f
je 0x1001af45
cmp ax, 0x75
je 0x1001af45
cmp ax, 0x78
je 0x1001af45
cmp ax, 0x58
je 0x1001af45
cmp ax, 0x65
je 0x1001af05
cmp ax, 0x45
je 0x1001af05
cmp ax, 0x66
je 0x1001af05
cmp ax, 0x46
je 0x1001af05
cmp ax, 0x67
je 0x1001af05
cmp ax, 0x47
je 0x1001af05
cmp ax, 0x61
je 0x1001af05
cmp ax, 0x41
je 0x1001af05
cmp ax, 0x63
jne 0x1001ac72
mov eax, dword [esp + 0x78]
add eax, 0xffffffff
push eax
lea ecx, [esp + 0x68]
call fcn.10001d10
mov word [eax], 0x43
add dword [esp + 0x14], 4
cmp dword [esp + 0x7c], 8
mov eax, dword [esp + 0x68]
jae 0x1001ac5a
lea eax, [esp + 0x68]
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx - 4]
push edx
push eax
push 0x100
lea eax, [esp + 0xac]
push eax
jmp 0x1001acbd
cmp ax, 0x43
jne 0x1001ad26
mov ecx, dword [esp + 0x78]
add ecx, 0xffffffff
push ecx
lea ecx, [esp + 0x68]
call fcn.10001d10
add dword [esp + 0x14], 4
mov word [eax], 0x63
cmp dword [esp + 0x7c], 8
mov eax, dword [esp + 0x68]
jae 0x1001aca6
lea eax, [esp + 0x68]
mov edx, dword [esp + 0x14]
movzx ecx, word [edx - 4]
push ecx
push eax
push 0x100
lea edx, [esp + 0xac]
push edx
call dword [sym.imp.MSVCR80.dll__snwprintf]
add esp, 0x10
lea eax, [esp + 0xa0]
mov word [esp + 0x29e], 0
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1001ace0
sub eax, edx
sar eax, 1
lea ecx, [esp + 0xa0]
push eax
push ecx
mov ecx, dword [esp + 0x20]
call fcn.10010720
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x38], esi
mov ecx, eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2b8]
add esi, 2
jmp 0x1001a910
cmp ax, 0x73
jne 0x1001ae36
mov eax, dword [esp + 0x14]
add eax, 4
mov dword [esp + 0x14], eax
mov eax, dword [eax - 4]
push eax
lea ecx, [esp + 0x84]
call fcn.10015740
mov esi, dword [esp + 0x98]
add esi, 1
cmp esi, 0x100
mov byte [esp + 0x2ac], 4
jbe 0x1001adb1
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MFC80U.DLL_Ordinal_265
mov edi, eax
push 0
mov dword [esp + 0x34], edi
call sub.MFC80U.DLL_Ordinal_266
mov eax, dword [esp + 0x90]
add esp, 8
cmp dword [esp + 0x9c], 8
jae 0x1001ada5
lea eax, [esp + 0x88]
push esi
push eax
push esi
push edi
call dword [sym.imp.MSVCR80.dll_wcsncpy_s]
jmp 0x1001ade2
cmp dword [esp + 0x9c], 8
mov eax, dword [esp + 0x88]
jae 0x1001adc9
lea eax, [esp + 0x88]
push esi
push eax
lea eax, [esp + 0xa8]
push 0x100
push eax
call dword [sym.imp.MSVCR80.dll_wcsncpy_s]
mov edi, dword [esp + 0x3c]
add esp, 0x10
lea ecx, [esp + 0x80]
mov byte [esp + 0x2ac], 2
call fcn.10015180
test edi, edi
je 0x1001acc6
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1001ae06
mov ecx, dword [esp + 0x18]
sub eax, edx
sar eax, 1
push eax
push edi
call fcn.10010720
push edi
mov dword [esp + 0x30], 0
call sub.MFC80U.DLL_Ordinal_266
add esp, 4
jmp 0x1001ad01
cmp ax, 0x53
jne 0x1001aef6
mov ecx, dword [esp + 0x78]
add ecx, 0xffffffff
push ecx
lea ecx, [esp + 0x68]
call fcn.10001d10
mov word [eax], 0x73
mov eax, dword [esp + 0x14]
mov ebp, dword [eax]
add eax, 4
mov dword [esp + 0x14], eax
mov eax, ebp
lea edx, [eax + 2]
jmp 0x1001ae70
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1001ae70
sub eax, edx
sar eax, 1
lea esi, [eax + 1]
cmp esi, 0x100
jbe 0x1001aed3
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MFC80U.DLL_Ordinal_265
mov edi, eax
push 0
mov dword [esp + 0x34], edi
call sub.MFC80U.DLL_Ordinal_266
mov eax, dword [esp + 0x70]
add esp, 8
cmp dword [esp + 0x7c], 8
jae 0x1001aec1
lea eax, [esp + 0x68]
push ebp
push eax
push esi
push edi
call dword [sym.imp.MSVCR80.dll__snwprintf]
add esp, 0x10
jmp 0x1001adf9
cmp dword [esp + 0x7c], 8
mov eax, dword [esp + 0x68]
jae 0x1001aee2
lea eax, [esp + 0x68]
push ebp
push eax
push 0x100
lea eax, [esp + 0xac]
push eax
jmp 0x1001acbd
cmp ax, 0x70
jne 0x1001acc6
jmp 0x1001ac46
mov eax, 8
add dword [esp + 0x14], eax
cmp dword [esp + 0x7c], eax
mov eax, dword [esp + 0x68]
jae 0x1001af1c
lea eax, [esp + 0x68]
mov ecx, dword [esp + 0x14]
fld qword [ecx - 8]
sub esp, 8
fstp qword [esp]
push eax
lea edx, [esp + 0xac]
push 0x100
push edx
call dword [sym.imp.MSVCR80.dll__snwprintf]
add esp, 0x14
jmp 0x1001acc6
mov eax, dword [esp + 0x28]
mov esi, 4
cmp ecx, esi
jl 0x1001afa5
cmp word [eax - 6], 0x49
jne 0x1001afa5
cmp word [eax - 4], 0x36
jne 0x1001afa5
cmp word [eax - 2], 0x34
jne 0x1001afa5
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x68]
add eax, 8
cmp dword [esp + 0x7c], 8
mov dword [esp + 0x14], eax
jae 0x1001af81
lea ecx, [esp + 0x68]
mov edx, dword [eax - 4]
mov eax, dword [eax - 8]
push edx
push eax
push ecx
lea ecx, [esp + 0xac]
push 0x100
push ecx
call dword [sym.imp.MSVCR80.dll__snwprintf]
add esp, 0x14
jmp 0x1001acc6
cmp ecx, 3
mov edx, 0x6c
jl 0x1001afd7
cmp word [eax - 4], dx
jne 0x1001afd7
cmp word [eax - 2], dx
jne 0x1001afd7
mov edx, dword [esp + 0x78]
push 3
push 0x10077bc8
push 2
add edx, 0xfffffffd
push edx
lea ecx, [esp + 0x74]
call fcn.10010970
jmp 0x1001af67
cmp ecx, 2
jl 0x1001b001
cmp word [eax - 2], dx
jne 0x1001b001
add dword [esp + 0x14], esi
cmp dword [esp + 0x7c], 8
mov eax, dword [esp + 0x68]
jae 0x1001aff5
lea eax, [esp + 0x68]
mov edx, dword [esp + 0x14]
mov ecx, dword [edx - 4]
jmp 0x1001acae
add dword [esp + 0x14], esi
jmp 0x1001ac4b
mov esi, 8
cmp dword [eax + 0x18], esi
jb 0x1001b016
mov edx, dword [edx]
mov eax, dword [eax + 0x14]
lea eax, [edx + eax*2]
mov edx, dword [esp + 0x1c]
push eax
mov ecx, 0xfffffffe
push ecx
mov ecx, dword [esp + 0x28]
push ecx
push edx
mov ecx, ebx
call fcn.100194f0
push 0
call sub.MFC80U.DLL_Ordinal_266
add esp, 4
cmp dword [esp + 0x7c], esi
jb 0x1001b0cf
mov eax, dword [esp + 0x68]
push eax
jmp 0x1001b0c7
movzx ecx, word [esi + 2]
push 0x10077bc4
push ecx
push 0x10077bc0
push str.__:_Unknown_type
push str.Idis::_g2_wstring_vformat
push 0x100901e0
call fcn.10019be0
add esp, 8
push eax
call fcn.1000a0e0
add esp, 8
push eax
call fcn.10019be0
add esp, 8
push eax
call fcn.10009e90
add esp, 8
push eax
call fcn.10019be0
add esp, 8
mov esi, eax
push 0xa
mov ecx, esi
call fcn.1001a3b0
mov ecx, esi
call fcn.10015a40
call dword [sym.imp.MSVCR80.dll_abort]
push 0
call sub.MFC80U.DLL_Ordinal_266
add esp, 4
cmp dword [esp + 0x7c], 8
jb 0x1001b0cf
mov edx, dword [esp + 0x68]
push edx
call sub.MFC80U.DLL_Ordinal_764
add esp, 4
mov ecx, dword [esp + 0x2a4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x28c]
xor ecx, esp
call fcn.10028d90
add esp, 0x29c
ret