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

Disassembly:
push 0xffffffffffffffff
push 0x13a2997
mov eax, dword fs:[0]
push eax
sub esp, 0x158
mov eax, dword [0x14016ec]
xor eax, esp
mov dword [esp + 0x150], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x14016ec]
xor eax, esp
push eax
lea eax, [esp + 0x16c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x17c]
mov ebx, ecx
push 0xffffffffffffffff
mov dword [esp + 0x28], 0
mov eax, dword [ebp + 8]
push 0
lea esi, [ebx + 0x20]
push eax
mov ecx, esi
mov dword [esp + 0x28], ebx
call fcn.011e9870
cmp dword [esi + 0x14], 0x10
mov eax, dword [ebx + 4]
jb 0x12ab3b3
mov ecx, dword [esi]
mov dword [esp + 0x14], ecx
jmp 0x12ab3b7
mov dword [esp + 0x14], esi
lea esi, [eax + 0xd4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x1c]
push eax
mov eax, esi
call fcn.012a2930
mov esi, dword [esi + 4]
mov eax, dword [esp + 0x18]
cmp eax, esi
je 0x12ab4d4
mov eax, dword [eax + 0xc]
mov dword [esp + 0x14], eax
test eax, eax
je 0x12ab4d4
lea eax, [esp + 0xa4]
call fcn.012d3be0
mov dword [esp + 0x174], 0
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, eax
call fcn.012a60d0
lea esi, [esp + 0x68]
mov ecx, ebp
call fcn.012c9da0
mov edi, eax
lea esi, [esp + 0x4c]
lea ecx, [esp + 0xa4]
mov byte [esp + 0x174], 1
call fcn.012c9da0
mov byte [esp + 0x174], 2
cmp dword [edi + 0x14], 0x10
mov ecx, dword [edi + 0x10]
jb 0x12ab447
mov edi, dword [edi]
mov edx, dword [eax + 0x10]
push ecx
push edi
push edx
push 0
mov ecx, eax
call fcn.011ebb10
test eax, eax
mov esi, 0x10
sete byte [esp + 0x2b]
mov byte [esp + 0x174], 1
cmp dword [esp + 0x60], esi
jb 0x12ab47d
mov eax, dword [esp + 0x4c]
push eax
call fcn.01328a36
add esp, 4
mov byte [esp + 0x174], 0
mov dword [esp + 0x60], 0xf
mov dword [esp + 0x5c], 0
mov byte [esp + 0x4c], 0
cmp dword [esp + 0x7c], esi
jb 0x12ab4ad
mov ecx, dword [esp + 0x68]
push ecx
call fcn.01328a36
add esp, 4
lea ecx, [esp + 0xa4]
mov dword [esp + 0x174], 0xffffffff
call fcn.012d3ca0
cmp byte [esp + 0x2b], 0
je 0x12ab4d4
mov eax, dword [esp + 0x14]
jmp 0x12ab6cc
mov edi, dword [ebx + 4]
mov ecx, dword [edi + 4]
sub ecx, dword [edi]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
xor esi, esi
add eax, edx
je 0x12ab59d
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x10]
mov ecx, dword [edi]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x18]
add eax, dword [esp + 0x20]
cmp dword [esp + 0x24], 0x10
jb 0x12ab528
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
jmp 0x12ab52b
mov edx, dword [ebp + 8]
mov edi, dword [eax + 0x10]
mov ecx, edi
cmp ecx, edi
jae 0x12ab534
mov ecx, dword [esp + 0x14]
cmp edi, ecx
jae 0x12ab53e
mov ecx, edi
cmp dword [eax + 0x14], 0x10
jb 0x12ab546
mov eax, dword [eax]
push ecx
push edx
push eax
call fcn.011ea9d0
add esp, 0xc
test eax, eax
jne 0x12ab56d
mov eax, dword [esp + 0x14]
cmp edi, eax
jae 0x12ab562
or eax, 0xffffffff
jmp 0x12ab56b
xor ecx, ecx
cmp edi, eax
setne cl
mov eax, ecx
test eax, eax
sete al
test al, al
jne 0x12ab5de
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
add dword [esp + 0x18], 0x1c
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
inc esi
add eax, edx
cmp esi, eax
jb 0x12ab512
mov eax, dword [ebx]
cmp dword [eax + 4], 0
je 0x12ab787
mov ecx, dword [ebp + 8]
mov edi, dword [ebx + 4]
call fcn.011eb4d0
xor esi, esi
cmp dword [ebp + 0x14], esi
jle 0x12ab755
nop
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + esi*4]
cmp dword [eax + 0x14], 0x10
mov edi, dword [ebx + 4]
jb 0x12ab6f6
mov edx, dword [eax]
mov dword [esp + 0x14], edx
jmp 0x12ab6fa
push 0x21
push str.File_recursively_imports_itself:
lea ecx, [esp + 0x70]
mov dword [esp + 0x84], 0xf
mov dword [esp + 0x80], 0
mov byte [esp + 0x70], 0
call fcn.011e8800
mov dword [esp + 0x174], 3
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp esi, ecx
jae 0x12ab688
lea edi, [esi*8]
sub edi, esi
add edi, edi
add edi, edi
mov eax, dword [ebx + 4]
mov eax, dword [eax]
push 0xffffffffffffffff
add eax, edi
push 0
push eax
lea ecx, [esp + 0x74]
call fcn.011e77b0
push 4
push str.___
lea ecx, [esp + 0x70]
call fcn.011e78a0
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
inc esi
add eax, edx
add edi, 0x1c
cmp esi, eax
jb 0x12ab640
mov eax, dword [ebp + 8]
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x74]
call fcn.011e77b0
mov edi, dword [ebp + 8]
lea ecx, [esp + 0x68]
push ecx
push 9
push ebp
mov esi, ebx
call fcn.012a95b0
mov dword [esp + 0x174], 0xffffffff
cmp dword [esp + 0x7c], 0x10
jb 0x12ab6ca
mov edx, dword [esp + 0x68]
push edx
call fcn.01328a36
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x16c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x150]
xor ecx, esp
call fcn.01328a41
add esp, 0x164
ret 4
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x28]
push ecx
lea eax, [edi + 0xd4]
call fcn.012a2930
mov edi, dword [edi + 0xd8]
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x12ab723
cmp dword [eax + 0xc], 0
jne 0x12ab74b
mov eax, dword [ebx]
cmp dword [eax + 0xc], 0
je 0x12ab73e
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + esi*4]
push ecx
mov ecx, dword [eax + 0xc]
call fcn.012a5710
test eax, eax
jne 0x12ab74b
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebx]
call fcn.012a5a50
inc esi
cmp esi, dword [ebp + 0x14]
jl 0x12ab5c0
mov edi, dword [ebx + 4]
mov esi, dword [edi + 4]
cmp dword [edi], esi
je 0x12ab787
cmp dword [esi - 8], 0x10
jb 0x12ab771
mov eax, dword [esi - 0x1c]
push eax
call fcn.01328a36
add esp, 4
mov dword [esi - 8], 0xf
mov dword [esi - 0xc], 0
mov byte [esi - 0x1c], 0
add dword [edi + 4], 0xffffffe4
mov esi, dword [ebx + 4]
call fcn.012a41f0
mov esi, dword [ebx + 4]
push 0x3c
call fcn.01328a50
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x9c]
lea ecx, [esp + 0x24]
add esp, 4
cmp ecx, eax
jae 0x12ab831
mov edx, dword [esi + 0x98]
cmp edx, ecx
ja 0x12ab831
mov edi, ecx
mov ecx, dword [esi + 0xa0]
sub edi, edx
sar edi, 2
cmp eax, ecx
jne 0x12ab818
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12ab7e3
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12ab818
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x12ab800
xor ecx, ecx
jmp 0x12ab802
add ecx, edx
cmp ecx, eax
jae 0x12ab808
mov ecx, eax
push ecx
lea ecx, [esi + 0x98]
call fcn.012726f0
mov ebx, dword [esp + 0x1c]
mov eax, dword [esi + 0x9c]
mov edx, dword [esi + 0x98]
lea edi, [edx + edi*4]
test eax, eax
je 0x12ab898
mov ecx, dword [edi]
mov dword [eax], ecx
jmp 0x12ab898
mov ecx, dword [esi + 0xa0]
cmp eax, ecx
jne 0x12ab888
mov edx, dword [esi + 0x98]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12ab857
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12ab888
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x12ab874
xor ecx, ecx
jmp 0x12ab876
add ecx, edx
cmp ecx, eax
jae 0x12ab87c
mov ecx, eax
push ecx
lea ecx, [esi + 0x98]
call fcn.012726f0
mov eax, dword [esi + 0x9c]
test eax, eax
je 0x12ab898
mov edx, dword [esp + 0x20]
mov dword [eax], edx
add dword [esi + 0x9c], 4
mov eax, dword [esp + 0x20]
mov edi, dword [ebx + 4]
push 0xdc
mov dword [ebx + 0x3c], eax
call fcn.01328a50
mov esi, eax
add esp, 4
mov dword [esp + 0x24], esi
mov dword [esp + 0x174], 7
test esi, esi
je 0x12ab921
push esi
call fcn.012b4820
lea eax, [esi + 0x2c]
push eax
mov byte [esp + 0x178], 8
call fcn.012b4910
lea eax, [esi + 0x58]
push eax
mov byte [esp + 0x178], 9
call fcn.012b4910
lea eax, [esi + 0x84]
push eax
mov byte [esp + 0x178], 0xa
call fcn.012b4910
lea eax, [esi + 0xb0]
push eax
mov byte [esp + 0x178], 0xb
call fcn.012b4910
mov dword [esp + 0x18], esi
jmp 0x12ab929
mov dword [esp + 0x18], 0
mov dword [esp + 0x174], 0xffffffff
mov eax, dword [edi + 0x8c]
mov ecx, dword [esp + 0x18]
lea esi, [edi + 0x88]
lea edx, [esp + 0x14]
mov dword [esp + 0x14], ecx
cmp edx, eax
jae 0x12ab9bf
mov edx, dword [esi]
lea ecx, [esp + 0x14]
cmp edx, ecx
ja 0x12ab9bf
mov edi, ecx
mov ecx, dword [esi + 8]
sub edi, edx
sar edi, 2
cmp eax, ecx
jne 0x12ab9ad
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12ab97e
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12ab9ad
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x12ab99b
xor ecx, ecx
jmp 0x12ab99d
add ecx, edx
cmp ecx, eax
jae 0x12ab9a3
mov ecx, eax
push ecx
call fcn.012b4c90
mov ebx, dword [esp + 0x1c]
mov eax, dword [esi + 4]
mov edx, dword [esi]
lea edi, [edx + edi*4]
test eax, eax
je 0x12aba16
mov ecx, dword [edi]
mov dword [eax], ecx
jmp 0x12aba16
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x12aba09
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12ab9de
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12aba09
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x12ab9fb
xor ecx, ecx
jmp 0x12ab9fd
add ecx, edx
cmp ecx, eax
jae 0x12aba03
mov ecx, eax
push ecx
call fcn.012b4c90
mov eax, dword [esi + 4]
test eax, eax
je 0x12aba16
mov edx, dword [esp + 0x18]
mov dword [eax], edx
add dword [esi + 4], 4
mov eax, dword [esp + 0x18]
mov ecx, dword [ebx + 0x3c]
mov dword [ebx + 0x40], eax
mov dword [ecx + 0x38], eax
test byte [ebp + 0xbc], 1
jne 0x12abaf0
push 0x28
mov esi, 0xf
xor edi, edi
push str.Missing_field:_FileDescriptorProto.name.
lea ecx, [esp + 0x54]
mov dword [esp + 0x68], esi
mov dword [esp + 0x64], edi
mov byte [esp + 0x54], 0
call fcn.011e8800
mov dword [esp + 0x174], 0xc
push edi
push 0x13b8b48
lea ecx, [esp + 0x70]
mov dword [esp + 0x84], esi
mov dword [esp + 0x80], edi
mov byte [esp + 0x70], 0
call fcn.011e8800
lea edx, [esp + 0x4c]
push edx
push 9
push ebp
lea edi, [esp + 0x74]
mov esi, ebx
mov byte [esp + 0x180], 0xd
call fcn.012a95b0
mov byte [esp + 0x174], 0xc
cmp dword [esp + 0x7c], 0x10
jb 0x12ababc
mov eax, dword [esp + 0x68]
push eax
call fcn.01328a36
add esp, 4
mov dword [esp + 0x174], 0xffffffff
cmp dword [esp + 0x60], 0x10
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
jb 0x12abaf0
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.01328a36
add esp, 4
mov edx, dword [ebx + 4]
mov edi, dword [ebp + 8]
push 0x1c
mov dword [esp + 0x28], edx
call fcn.01328a50
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov dword [esp + 0x174], 0xe
test esi, esi
je 0x12abb3c
push 0xffffffffffffffff
push 0
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
push edi
mov ecx, esi
mov byte [esi], 0
call fcn.011e9870
mov dword [esp + 0x18], esi
jmp 0x12abb44
mov dword [esp + 0x18], 0
mov dword [esp + 0x174], 0xffffffff
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x24]
add esi, 0x68
mov dword [esp + 0x14], eax
mov eax, dword [esi + 4]
lea ecx, [esp + 0x14]
cmp ecx, eax
jae 0x12abbd4
mov edx, dword [esi]
cmp edx, ecx
ja 0x12abbd4
mov edi, ecx
mov ecx, dword [esi + 8]
sub edi, edx
sar edi, 2
cmp eax, ecx
jne 0x12abbc2
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12abb93
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12abbc2
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x12abbb0
xor ecx, ecx
jmp 0x12abbb2
add ecx, edx
cmp ecx, eax
jae 0x12abbb8
mov ecx, eax
push ecx
call fcn.012b4c90
mov ebx, dword [esp + 0x1c]
mov eax, dword [esi + 4]
mov edx, dword [esi]
lea edi, [edx + edi*4]
test eax, eax
je 0x12abc2b
mov ecx, dword [edi]
mov dword [eax], ecx
jmp 0x12abc2b
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x12abc1e
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12abbf3
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12abc1e
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x12abc10
xor ecx, ecx
jmp 0x12abc12
add ecx, edx
cmp ecx, eax
jae 0x12abc18
mov ecx, eax
push ecx
call fcn.012b4c90
mov eax, dword [esi + 4]
test eax, eax
je 0x12abc2b
mov edx, dword [esp + 0x18]
mov dword [eax], edx
add dword [esi + 4], 4
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov edx, dword [ebp + 0xbc]
shr edx, 1
test dl, 1
je 0x12abd8c
mov eax, dword [esp + 0x1c]
mov edi, dword [ebp + 0xc]
mov ebx, dword [eax + 4]
push 0x1c
call fcn.01328a50
mov esi, eax
add esp, 4
mov dword [esp + 0x24], esi
mov dword [esp + 0x174], 0xf
test esi, esi
je 0x12abc98
push 0xffffffffffffffff
push 0
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
push edi
mov ecx, esi
mov byte [esi], 0
call fcn.011e9870
mov dword [esp + 0x18], esi
mov edi, esi
jmp 0x12abc9e
xor edi, edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x174], 0xffffffff
mov eax, dword [ebx + 0x6c]
lea esi, [ebx + 0x68]
lea ecx, [esp + 0x14]
mov dword [esp + 0x14], edi
cmp ecx, eax
jae 0x12abd22
mov edx, dword [esi]
cmp edx, ecx
ja 0x12abd22
mov edi, ecx
mov ecx, dword [esi + 8]
sub edi, edx
sar edi, 2
cmp eax, ecx
jne 0x12abd10
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12abce5
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12abd10
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x12abd02
xor ecx, ecx
jmp 0x12abd04
add ecx, edx
cmp ecx, eax
jae 0x12abd0a
mov ecx, eax
push ecx
call fcn.012b4c90
mov eax, dword [esi + 4]
mov edx, dword [esi]
lea edi, [edx + edi*4]
test eax, eax
je 0x12abd75
mov ecx, dword [edi]
mov dword [eax], ecx
jmp 0x12abd75
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x12abd6c
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x12abd41
push 0x13b88f8
call fcn.013279c1
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x12abd6c
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x12abd5e
xor ecx, ecx
jmp 0x12abd60
add ecx, edx
cmp ecx, eax
jae 0x12abd66
mov ecx, eax
push ecx
call fcn.012b4c90
mov eax, dword [esi + 4]
test eax, eax
je 0x12abd75
mov dword [eax], edi
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
add dword [esi + 4], 4
mov ebx, dword [esp + 0x1c]
mov dword [eax + 4], edx
mov edi, eax
jmp 0x12abdf0
push 0
push 0x13b8b48
lea ecx, [esp + 0x54]
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], 0
mov byte [esp + 0x54], 0
call fcn.011e8800
mov esi, 0x10
lea ecx, [esp + 0x4c]
mov dword [esp + 0x174], esi
mov edx, dword [ebx + 4]
push ecx
push edx
call fcn.012a5320
mov edi, dword [esp + 0x20]
mov dword [esp + 0x174], 0xffffffff
mov dword [edi + 4], eax
cmp dword [esp + 0x60], esi
jb 0x12abdf0
mov eax, dword [esp + 0x4c]
push eax
call fcn.01328a36
add esp, 4
mov ecx, dword [ebx]
mov dword [edi + 8], ecx
mov edx, dword [ebx + 4]
push edx
mov eax, edi
call fcn.012a5090
test al, al
jne 0x12abe72
push 0x2d
push str.A_file_with_this_name_is_already_in_the_pool.
lea ecx, [esp + 0x54]
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], 0
mov byte [esp + 0x54], al
call fcn.011e8800
lea eax, [esp + 0x4c]
push eax
push 9
mov dword [esp + 0x17c], 0x11
mov edi, dword [ebp + 8]
push ebp
mov esi, ebx
call fcn.012a95b0
mov dword [esp + 0x174], 0xffffffff
cmp dword [esp + 0x60], 0x10
jb 0x12abe64
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.01328a36
add esp, 4
mov edx, dword [ebx + 4]
push edx
call fcn.012a42e0
jmp 0x12ab6ca
mov eax, dword [edi + 4]
xor esi, esi
cmp dword [eax + 0x10], esi
je 0x12abe86
push edi
push ebp
push eax
mov ecx, ebx
call fcn.012aace0
push 0x2c
mov dword [esp + 0x38], esi
call fcn.01328a50
add esp, 4
cmp eax, esi
je 0x12ac566
mov dword [esp + 0x30], eax
mov dword [eax], eax
mov eax, dword [esp + 0x30]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x30]
mov dword [eax + 8], eax
mov eax, dword [esp + 0x30]
mov byte [eax + 0x28], 1
mov ecx, dword [esp + 0x30]
mov byte [ecx + 0x29], 1
mov dword [esp + 0x174], 0x13
mov eax, dword [ebp + 0x14]
mov dword [edi + 0xc], eax
mov eax, dword [ebp + 0x14]
mov esi, dword [ebx + 4]
add eax, eax
add eax, eax
je 0x12abefe
push eax
call fcn.01328a50
add esp, 4
lea edx, [esp + 0x14]
push edx
lea ecx, [esi + 0x98]
mov dword [esp + 0x18], eax
call fcn.01272560
mov eax, dword [esp + 0x14]
mov dword [edi + 0x10], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x18], 0
test eax, eax
jle 0x12ac223
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x18]
mov ebx, dword [eax + ecx*4]
lea edx, [esp + 0x44]
push edx
lea eax, [esp + 0x30]
push eax
call fcn.0122ae20
cmp byte [esp + 0x48], 0
jne 0x12abfd8
mov ecx, dword [ebp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [ecx + edx*4]
push eax
lea eax, [esp + 0x88]
push eax
mov ebx, str.Import__
call fcn.012b53d0
push str.__was_listed_twice.
push eax
lea ecx, [esp + 0x5c]
mov bl, 0x16
push ecx
mov byte [esp + 0x188], bl
call fcn.011ec430
add esp, 0x14
mov esi, dword [esp + 0x1c]
push eax
push 9
mov byte [esp + 0x17c], 0x17
mov edi, dword [ebp + 8]
push ebp
call fcn.012a95b0
mov byte [esp + 0x174], bl
cmp dword [esp + 0x60], 0x10
jb 0x12abfa4
mov edx, dword [esp + 0x4c]
push edx
call fcn.01328a36
add esp, 4
xor eax, eax
mov byte [esp + 0x174], 0x13
cmp dword [esp + 0x98], 0x10
mov dword [esp + 0x60], 0xf
mov dword [esp + 0x5c], eax
mov byte [esp + 0x4c], al
jb 0x12abfd8
mov eax, dword [esp + 0x84]
push eax
call fcn.01328a36
add esp, 4
mov ecx, dword [ebp + 0x10]
mov esi, dword [esp + 0x18]
mov eax, dword [ecx + esi*4]
cmp dword [eax + 0x14], 0x10
mov edi, dword [esp + 0x1c]
mov ecx, dword [edi + 4]
jb 0x12abff7
mov edx, dword [eax]
mov dword [esp + 0x14], edx
jmp 0x12abffb
mov dword [esp + 0x14], eax
lea ebx, [ecx + 0xd4]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x28]
push ecx
mov eax, ebx
call fcn.012a2930
mov ebx, dword [ebx + 4]
mov eax, dword [esp + 0x24]
cmp eax, ebx
jne 0x12ac021
xor eax, eax
jmp 0x12ac024
mov eax, dword [eax + 0xc]
mov dword [esp + 0x14], eax
test eax, eax
jne 0x12ac20b
mov ecx, dword [edi]
cmp dword [ecx + 0xc], eax
je 0x12ac052
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + esi*4]
mov ecx, dword [ecx + 0xc]
push eax
call fcn.012a5710
mov dword [esp + 0x14], eax
test eax, eax
jne 0x12ac20b
mov eax, dword [edi]
cmp byte [eax + 0x15], 0
je 0x12ac06b
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + esi*4]
push eax
call fcn.012aa650
jmp 0x12ac20b
mov edi, 0xf
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
mov byte [esp + 0x174], 0x1b
cmp dword [eax + 4], 0
mov ebx, str.Import__
jne 0x12ac131
mov ecx, dword [ebp + 0x10]
mov esi, dword [ecx + esi*4]
lea edx, [esp + 0x84]
push esi
push edx
call fcn.012b53d0
push str.__has_not_been_loaded.
push eax
lea eax, [esp + 0x5c]
mov bl, 0x1d
push eax
mov byte [esp + 0x188], bl
call fcn.011ec430
add esp, 0x14
push eax
lea ecx, [esp + 0x6c]
mov byte [esp + 0x178], 0x1e
call fcn.011e7740
mov esi, 0x10
mov byte [esp + 0x174], bl
cmp dword [esp + 0x60], esi
jb 0x12ac0f9
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.01328a36
add esp, 4
xor ebx, ebx
mov byte [esp + 0x174], 0x1b
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
cmp dword [esp + 0x98], esi
jb 0x12ac1c3
mov edx, dword [esp + 0x84]
push edx
call fcn.01328a36
add esp, 4
jmp 0x12ac1c3
mov eax, dword [ebp + 0x10]
mov esi, dword [eax + esi*4]
lea ecx, [esp + 0x84]
push esi
push ecx
call fcn.012b53d0
push str.__was_not_found_or_had_errors.
push eax
lea edx, [esp + 0x5c]
mov bl, 0x20
push edx
mov byte [esp + 0x188], bl
call fcn.011ec430
add esp, 0x14
push eax
lea ecx, [esp + 0x6c]
mov byte [esp + 0x178], 0x21
call fcn.011e7740
mov esi, 0x10
mov byte [esp + 0x174], bl
cmp dword [esp + 0x60], esi
jb 0x12ac192
mov eax, dword [esp + 0x4c]
push eax
call fcn.01328a36
add esp, 4
xor eax, eax
mov byte [esp + 0x174], 0x1b
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], eax
mov byte [esp + 0x4c], al
cmp dword [esp + 0x98], esi
jb 0x12ac1c1
mov ecx, dword [esp + 0x84]
push ecx
call fcn.01328a36
add esp, 4
xor ebx, ebx
mov edi, dword [ebp + 8]
mov esi, dword [esp + 0x1c]
lea edx, [esp + 0x68]
push edx
push 9
push ebp
call fcn.012a95b0
mov byte [esp + 0x174], 0x13
cmp dword [esp + 0x7c], 0x10
jb 0x12ac1f3
mov eax, dword [esp + 0x68]
push eax
call fcn.01328a36
add esp, 4
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 0x10]
mov dword [edx + esi*4], eax
inc esi
mov dword [esp + 0x18], esi
cmp esi, dword [ebp + 0x14]
jl 0x12abf14
mov eax, dword [ebp + 0x34]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov dword [ebx + 0x14], eax
mov eax, dword [ebp + 0x34]
mov esi, dword [ecx + 4]
shl eax, 6
test eax, eax
je 0x12ac25f
push eax
call fcn.01328a50
add esp, 4
lea edx, [esp + 0x14]
push edx
lea ecx, [esi + 0x98]
mov dword [esp + 0x18], eax
call fcn.01272560
mov eax, dword [esp + 0x14]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 0x34]
xor esi, esi
test eax, eax
jle 0x12ac291
xor edi, edi
lea ecx, [ecx]
mov ecx, dword [ebx + 0x18]
mov eax, dword [ebp + 0x30]
mov eax, dword [eax + esi*4]
add ecx, edi
push ecx
mov ecx, dword [esp + 0x20]
push 0
push eax
call fcn.012ac590
inc esi
add edi, 0x40
cmp esi, dword [ebp + 0x34]
jl 0x12ac270
mov eax, dword [ebp + 0x54]
mov edx, dword [esp + 0x1c]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp + 0x54]
mov esi, dword [edx + 4]
shl eax, 5
test eax, eax
je 0x12ac2c9
push eax
call fcn.01328a50
mov dword [esp + 0x18], eax
add esp, 4
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 0x98]
call fcn.01272560
mov eax, dword [esp + 0x14]
xor esi, esi
mov dword [ebx + 0x20], eax
cmp dword [ebp + 0x54], esi
jle 0x12ac2f9
xor edi, edi
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0x20]
mov ecx, dword [ebp + 0x50]
mov ebx, dword [ecx + esi*4]
mov ecx, dword [esp + 0x1c]
add eax, edi
push eax
push 0
call fcn.012ae280
inc esi
add edi, 0x20
cmp esi, dword [ebp + 0x54]
jl 0x12ac2d5
mov eax, dword [ebp + 0x74]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp + 0x74]
mov esi, dword [ecx + 4]
lea eax, [eax + eax*2]
add eax, eax
add eax, eax
add eax, eax
je 0x12ac339
push eax
call fcn.01328a50
add esp, 4
lea edx, [esp + 0x14]
push edx
lea ecx, [esi + 0x98]
mov dword [esp + 0x18], eax
call fcn.01272560
mov eax, dword [esp + 0x14]
xor esi, esi
mov dword [ebx + 0x28], eax
cmp dword [ebp + 0x74], esi
jle 0x12ac372
mov dword [esp + 0x14], esi
jmp 0x12ac350
mov ecx, dword [ebx + 0x28]
add ecx, dword [esp + 0x14]
mov eax, dword [ebp + 0x70]
mov edi, dword [eax + esi*4]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.012ae940
add dword [esp + 0x14], 0x18
inc esi
cmp esi, dword [ebp + 0x74]
jl 0x12ac350
mov eax, dword [ebp + 0x94]
mov edx, dword [esp + 0x1c]
mov dword [ebx + 0x2c], eax
mov eax, dword [ebp + 0x94]
mov esi, dword [edx + 4]
lea eax, [eax + eax*8]
add eax, eax
add eax, eax
add eax, eax
je 0x12ac3b4
push eax
call fcn.01328a50
mov dword [esp + 0x18], eax
add esp, 4
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 0x98]
call fcn.01272560
mov eax, dword [esp + 0x14]
xor edi, edi
mov dword [ebx + 0x30], eax
cmp dword [ebp + 0x94], edi
jle 0x12ac3eb
xor esi, esi
mov eax, dword [ebx + 0x30]
mov ecx, dword [ebp + 0x90]
mov edx, dword [ecx + edi*4]
mov ecx, dword [esp + 0x1c]
push 1
add eax, esi
push eax
push 0
call fcn.012ad260
inc edi
add esi, 0x48
cmp edi, dword [ebp + 0x94]
jl 0x12ac3c3
mov edx, dword [ebp + 0xbc]
shr edx, 7
test dl, 1
jne 0x12ac402
mov dword [ebx + 0x34], 0
jmp 0x12ac428
mov eax, dword [ebp + 0xb0]
test eax, eax
jne 0x12ac417
mov eax, dword [0x141d9f0]
mov eax, dword [eax + 0xb0]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
mov ebx, eax
call fcn.012ab2b0
mov ebx, esi
mov ecx, dword [esp + 0x1c]
push ebp
push ecx
call fcn.012aeb70
mov esi, dword [esp + 0x1c]
cmp byte [esi + 0x1c], 0
jne 0x12ac4d8
mov edi, esi
push edi
lea esi, [esp + 0x88]
call fcn.012b0710
mov byte [esp + 0x174], 0x26
mov esi, dword [edi + 0xc]
cmp esi, dword [edi + 0x10]
je 0x12ac475
push esi
lea ecx, [esp + 0x88]
call fcn.012b0800
add esi, 0x40
cmp esi, dword [edi + 0x10]
jne 0x12ac460
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
cmp ecx, eax
je 0x12ac4a5
mov edx, dword [esp + 0x24]
push edx
mov ebx, eax
call fcn.012b64b0
mov ecx, dword [esp + 0x28]
add esp, 4
mov esi, eax
mov eax, dword [edi + 0x10]
push ecx
push eax
push esi
call fcn.012b6500
add esp, 0xc
mov dword [edi + 0x10], esi
lea edx, [esp + 0x90]
push edx
mov byte [esp + 0x178], 0x13
call fcn.012ea9e0
mov esi, dword [esp + 0x1c]
cmp byte [esi + 0x1c], 0
mov ebx, dword [esp + 0x20]
jne 0x12ac4d8
push ebp
mov edx, ebx
mov ecx, esi
call fcn.012afc60
cmp byte [esi + 0x1c], 0
je 0x12ac519
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 4]
push ecx
call fcn.012a42e0
mov dword [esp + 0x174], 0x27
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push eax
push ecx
lea edi, [esp + 0x2c]
lea esi, [esp + 0x34]
call fcn.0122af70
mov dword [esp + 0x174], 0xffffffff
mov edx, dword [esp + 0x30]
jmp 0x12ab6c1
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 4]
call fcn.012a41f0
mov dword [esp + 0x174], 0x28
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push eax
push ecx
lea edi, [esp + 0x2c]
lea esi, [esp + 0x34]
call fcn.0122af70
mov dword [esp + 0x174], 0xffffffff
mov ecx, dword [esp + 0x30]
push ecx
call fcn.01328a36
mov eax, dword [esp + 0x24]
add esp, 4
jmp 0x12ab6cc
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], vtable.stdext::bad_alloc.0
lea ecx, [esp + 0x3c]
mov dword [esp + 0x174], 0x12
call fcn.011e4df0
int3