Function at 0x1012d0f0
Capabilities:
Get file size
Parse pe header
Read file via mapping
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x178
mov edx, dword [0x102999e4]
xorps xmm0, xmm0
mov eax, dword fs:[0x2c]
push esi
mov esi, dword [eax + edx*4]
lea eax, [eax + edx*4]
push edi
mov dword [ebp - 0x80], ecx
or edi, 0xffffffff
movaps xmmword [ebp - 0xc0], xmm0
movq qword [ebp - 0xb0], xmm0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], esi
nop dword [eax + eax]
mov eax, dword [0x102babfc]
inc edi
mov dword [ebp - 0x7c], edi
cmp eax, dword [esi + 4]
jle 0x1012d620
push 0x102babfc
call fcn.101e23b9
add esp, 4
cmp dword [0x102babfc], 0xffffffff
jne 0x1012d620
push 0
push 0x80
push 3
push 0
push 5
push connect
xorps xmm0, xmm0
mov dword [ebp - 0xc], 0
push str.c:windows_syswow64_ntdll.dll
movq qword [ebp - 0x88], xmm0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x28], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
push 0
push 0
push 0
push 4
push eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov edx, eax
xor esi, esi
mov dword [ebp - 0x18], edx
mov eax, dword [edx + 0x3c]
movzx ecx, word [eax + edx + 6]
mov edi, dword [eax + edx + 0x78]
mov dword [ebp - 4], ecx
lea ecx, [edx + 0xf8]
add ecx, eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x10], ecx
test eax, eax
je 0x1012d482
mov edx, dword [ecx + 0xc]
cmp edi, edx
jb 0x1012d21f
mov eax, dword [ecx + 0x10]
add eax, edx
cmp edi, eax
jb 0x1012d41b
mov eax, dword [ebp - 4]
inc esi
add ecx, 0x28
cmp esi, eax
jb 0x1012d208
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
mov edi, dword [edx + 0x1c]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x20], edx
xor esi, esi
mov edx, dword [ecx + 0xc]
cmp edi, edx
jb 0x1012d24f
mov eax, dword [ecx + 0x10]
add eax, edx
cmp edi, eax
jb 0x1012d44b
mov eax, dword [ebp - 4]
inc esi
add ecx, 0x28
cmp esi, eax
jb 0x1012d238
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov edi, dword [ecx + 0x24]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 8], edx
test eax, eax
je 0x1012d292
xor esi, esi
nop dword [eax]
mov edx, dword [ecx + 0xc]
cmp edi, edx
jb 0x1012d287
mov eax, dword [ecx + 0x10]
add eax, edx
cmp edi, eax
jb 0x1012d48f
mov eax, dword [ebp - 4]
inc esi
add ecx, 0x28
cmp esi, eax
jb 0x1012d270
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
mov edi, dword [ecx + 0x20]
mov ecx, dword [ebp - 0x10]
test eax, eax
je 0x1012d2c3
xor esi, esi
mov edx, dword [ecx + 0xc]
cmp edi, edx
jb 0x1012d2bb
mov eax, dword [ecx + 0x10]
add eax, edx
cmp edi, eax
jb 0x1012d4c2
mov eax, dword [ebp - 4]
inc esi
add ecx, 0x28
cmp esi, eax
jb 0x1012d2a4
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
add eax, ecx
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x2c], ecx
cmp dword [edx + 0x18], ecx
jbe 0x1012d5f8
nop
mov eax, dword [ebp - 0x1c]
xor esi, esi
movzx eax, word [eax + ecx*2]
mov ecx, dword [ebp - 8]
mov edi, dword [ecx + eax*4]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
test eax, eax
je 0x1012d31f
nop dword [eax]
mov edx, dword [ecx + 0xc]
cmp edi, edx
jb 0x1012d317
mov eax, dword [ecx + 0x10]
add eax, edx
cmp edi, eax
jb 0x1012d4d5
mov eax, dword [ebp - 4]
inc esi
add ecx, 0x28
cmp esi, eax
jb 0x1012d300
mov eax, dword [ebp - 0x10]
xor edi, edi
mov dword [ebp - 0x14], edi
cmp dword [ebp - 4], edi
je 0x1012d369
xor esi, esi
nop
mov ecx, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x38]
mov edx, dword [eax + 0xc]
cmp dword [edi + ecx*4], edx
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
jb 0x1012d361
mov ecx, dword [eax + 0x10]
mov edi, dword [ebp - 0x38]
add ecx, edx
mov edx, dword [ebp - 0x2c]
cmp dword [edi + edx*4], ecx
mov edx, dword [eax + 0xc]
mov edi, dword [ebp - 0x14]
jb 0x1012d4f7
mov ecx, dword [ebp - 4]
inc esi
add eax, 0x28
cmp esi, ecx
jb 0x1012d330
xor esi, esi
push 1
lea ecx, [ebp - 0x170]
call fcn.100e5c20
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x170]
lea edx, [esi + edx]
call fcn.100511a0
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x16c]
call fcn.10050eb0
lea ecx, [ebp - 0xd8]
call fcn.1000d6b0
mov ecx, eax
call fcn.10008550
lea ecx, [ebp - 0xd8]
mov esi, eax
call fcn.1000d660
cmp esi, 0xbe4e761f
jne 0x1012d5c1
mov ecx, dword [ebp - 0x18]
cmp byte [edi + ecx], 0xb8
jne 0x1012d5c1
mov al, byte [edi + ecx + 5]
cmp al, 0xb9
jne 0x1012d511
cmp dword [edi + ecx + 0xa], 0x424548d
jne 0x1012d5c1
cmp dword [edi + ecx + 0xd], 0xc015ff64
jne 0x1012d5c1
movzx eax, word [edi + ecx + 0x11]
test ax, ax
jne 0x1012d5c1
movzx eax, byte [edi + ecx + 0x13]
test al, al
je 0x1012d53b
jmp 0x1012d5c1
mov eax, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x10]
sub eax, edx
add eax, edi
cmp eax, dword [ebp - 0x28]
jb 0x1012d43e
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x14], eax
mov edi, dword [eax + 0x1c]
mov eax, dword [ebp - 4]
jmp 0x1012d236
mov edx, dword [ebp - 0x18]
add edx, eax
mov eax, dword [ebp - 4]
jmp 0x1012d22d
mov eax, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x10]
sub eax, edx
add eax, edi
cmp eax, dword [ebp - 0x28]
jb 0x1012d46e
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
mov dword [ebp - 8], edx
mov edi, dword [eax + 0x24]
mov eax, dword [ebp - 4]
jmp 0x1012d26a
add eax, dword [ebp - 0x18]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x14]
mov edi, dword [eax + 0x24]
mov eax, dword [ebp - 4]
jmp 0x1012d26a
mov ecx, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x14], ecx
jmp 0x1012d25d
mov eax, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x10]
sub eax, edx
add eax, edi
mov edi, dword [ebp - 0x14]
mov edi, dword [edi + 0x20]
cmp eax, dword [ebp - 0x28]
jb 0x1012d4b2
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 4]
jmp 0x1012d2a2
mov edx, dword [ebp - 0x18]
add edx, eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x1c], edx
jmp 0x1012d2a2
mov eax, dword [ecx + 0x14]
sub eax, edx
add eax, edi
cmp eax, dword [ebp - 0x28]
sbb ecx, ecx
and ecx, eax
jmp 0x1012d2c5
mov eax, dword [ecx + 0x14]
sub eax, edx
add eax, edi
mov edi, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
cmp edi, dword [ebp - 0x28]
jb 0x1012d32c
xor edi, edi
mov dword [ebp - 0x14], edi
jmp 0x1012d32c
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x2c]
sub eax, edx
mov edx, dword [ebp - 0x38]
add eax, dword [edx + ecx*4]
cmp eax, dword [ebp - 0x28]
sbb esi, esi
and esi, eax
jmp 0x1012d36b
cmp al, 0xba
jne 0x1012d562
cmp dword [edi + ecx + 6], 0x7ffe0300
jne 0x1012d52b
mov eax, 0x12ff
cmp word [edi + ecx + 0xa], ax
je 0x1012d53b
mov eax, 0xd2ff
cmp word [edi + ecx + 0xa], ax
jne 0x1012d5c1
mov eax, dword [edi + ecx + 1]
mov dword [ebp - 0x94], eax
mov ax, word [edi + ecx + 0xd]
mov word [ebp - 0x90], ax
movq xmm0, qword [ebp - 0x94]
mov dword [ebp - 0xc], 0xa
jmp 0x1012d5b9
cmp al, 0x33
jne 0x1012d5c1
cmp byte [edi + ecx + 6], 0xc9
jne 0x1012d5c1
cmp dword [edi + ecx + 7], 0x424548d
jne 0x1012d5c1
cmp dword [edi + ecx + 0xb], 0xc015ff64
jne 0x1012d5c1
movzx eax, word [edi + ecx + 0xf]
test ax, ax
jne 0x1012d5c1
movzx eax, byte [edi + ecx + 0x11]
test al, al
jne 0x1012d5c1
mov eax, dword [edi + ecx + 1]
mov dword [ebp - 0xa0], eax
mov ax, word [edi + ecx + 0x16]
mov word [ebp - 0x9c], ax
movq xmm0, qword [ebp - 0xa0]
mov dword [ebp - 0xc], 7
movq qword [ebp - 0x88], xmm0
lea ecx, [ebp - 0x120]
call fcn.100e5b50
lea eax, [ebp - 0x120]
mov dword [ebp - 0x120], 0x1025a2b4
push eax
call fcn.101e056c
mov ecx, dword [ebp - 0x2c]
add esp, 4
mov eax, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x2c], ecx
cmp ecx, dword [eax + 0x18]
jb 0x1012d2e0
movq xmm0, qword [ebp - 0x88]
mov eax, dword [ebp - 0xc]
push 0x102babfc
movq qword [0x102babf0], xmm0
mov dword [0x102babf8], eax
call fcn.101e236f
mov esi, dword [ebp - 0x74]
add esp, 4
mov eax, dword [0x102bac00]
cmp eax, dword [esi + 4]
jle 0x1012db78
push 0x102bac00
call fcn.101e23b9
add esp, 4
cmp dword [0x102bac00], 0xffffffff
jne 0x1012db78
mov eax, dword [0x102b6174]
test eax, eax
jne 0x1012db63
mov eax, dword [0x102babf8]
cmp eax, 7
je 0x1012d9ef
cmp eax, 0xa
je 0x1012d672
xor eax, eax
jmp 0x1012db63
mov eax, dword [ebp - 0x78]
mov esi, dword [eax]
mov eax, dword [0x102bac18]
cmp eax, dword [esi + 4]
jle 0x1012d6d7
push 0x102bac18
call fcn.101e23b9
add esp, 4
cmp dword [0x102bac18], 0xffffffff
jne 0x1012d6d7
lea eax, [ebp - 0x61]
mov dword [ebp - 0x34], 0x25ff
push eax
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x30], 0
push ecx
lea edx, [ebp - 0x34]
mov ecx, 0x102bac0c
push edx
call fcn.1012dcd0
push 0x10210010
call fcn.101e2242
add esp, 4
push 0x102bac18
call fcn.101e236f
add esp, 4
mov eax, dword [0x102bac08]
cmp eax, dword [esi + 4]
jle 0x1012d749
push 0x102bac08
call fcn.101e23b9
add esp, 4
cmp dword [0x102bac08], 0xffffffff
jne 0x1012d749
lea eax, [ebp - 0x62]
mov dword [ebp - 0x48], 0xb8
push eax
lea ecx, [ebp - 0x39]
mov dword [ebp - 0x44], 0xba00
push ecx
lea edx, [ebp - 0x48]
mov dword [ebp - 0x40], 0xd2ff0000
push edx
mov ecx, 0x102bac1c
mov word [ebp - 0x3c], 0xc2
mov byte [ebp - 0x3a], 0
call fcn.1012dcd0
push 0x10210070
call fcn.101e2242
add esp, 4
push 0x102bac08
call fcn.101e236f
add esp, 4
mov eax, dword [0x102bac10]
sub eax, dword [0x102bac0c]
mov dword [ebp - 0x24], eax
mov eax, dword [0x102bac38]
test eax, eax
jne 0x1012d7fa
mov ecx, 0xa62a3b3b
call fcn.1016fc50
mov edi, dword [eax + 4]
mov eax, 0x5a4d
cmp word [edi], ax
je 0x1012d77f
xor eax, eax
jmp 0x1012d7f5
mov eax, dword [edi + 0x3c]
cmp dword [eax + edi], 0x4550
je 0x1012d78f
xor eax, eax
jmp 0x1012d7f5
mov edx, dword [eax + edi + 0x78]
xor esi, esi
mov eax, dword [edx + edi + 0x14]
add edx, edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], 0xffffffff
mov ecx, dword [edx + 0x20]
add ecx, edi
mov dword [ebp - 0x1c], ecx
test eax, eax
je 0x1012d7d5
mov ecx, dword [ecx + esi*4]
add ecx, edi
call fcn.10008550
mov edx, dword [ebp - 0xc]
cmp eax, 0xca67b978
mov eax, dword [edx + 0x14]
je 0x1012d7d2
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, eax
jb 0x1012d7b1
jmp 0x1012d7d5
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 8]
cmp ecx, eax
jbe 0x1012d7e0
xor eax, eax
jmp 0x1012d7f5
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
mov dword [0x102bac38], eax
push 0x40
push 0x3000
lea ecx, [ebp - 0x24]
push ecx
push 0
push 0x102b6170
push 0xffffffffffffffff
call eax
mov eax, dword [0x102bac10]
mov ecx, dword [0x102bac0c]
sub eax, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [0x102b616c]
test eax, eax
jne 0x1012d8cf
mov ecx, 0xa62a3b3b
call fcn.1016fc50
mov edi, dword [eax + 4]
mov eax, 0x5a4d
cmp word [edi], ax
je 0x1012d848
xor eax, eax
jmp 0x1012d8c4
mov eax, dword [edi + 0x3c]
cmp dword [eax + edi], 0x4550
je 0x1012d858
xor eax, eax
jmp 0x1012d8c4
mov edx, dword [eax + edi + 0x78]
xor esi, esi
mov eax, dword [edx + edi + 0x14]
add edx, edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], 0xffffffff
mov ecx, dword [edx + 0x20]
add ecx, edi
mov dword [ebp - 0x1c], ecx
test eax, eax
je 0x1012d8a4
nop word [eax + eax]
mov ecx, dword [ecx + esi*4]
add ecx, edi
call fcn.10008550
mov edx, dword [ebp - 0xc]
cmp eax, 0xbb40d3d
mov eax, dword [edx + 0x14]
je 0x1012d8a1
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, eax
jb 0x1012d880
jmp 0x1012d8a4
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 8]
cmp ecx, eax
jbe 0x1012d8af
xor eax, eax
jmp 0x1012d8c4
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
mov ecx, dword [0x102bac0c]
mov dword [0x102b616c], eax
mov dword [ecx + 2], eax
push dword [ebp - 0x24]
push dword [0x102bac0c]
push dword [0x102b6170]
call fcn.101e3770
mov eax, dword [0x102bac20]
add esp, 0xc
sub eax, dword [0x102bac1c]
mov dword [ebp - 0x24], eax
mov eax, dword [0x102bac38]
mov dword [ebp - 0x68], 0
test eax, eax
jne 0x1012d9a9
mov ecx, 0xa62a3b3b
call fcn.1016fc50
mov edi, dword [eax + 4]
mov eax, 0x5a4d
cmp word [edi], ax
je 0x1012d926
xor eax, eax
jmp 0x1012d9a4
mov eax, dword [edi + 0x3c]
cmp dword [eax + edi], 0x4550
je 0x1012d936
xor eax, eax
jmp 0x1012d9a4
mov edx, dword [eax + edi + 0x78]
xor esi, esi
mov eax, dword [edx + edi + 0x14]
add edx, edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], 0xffffffff
mov ecx, dword [edx + 0x20]
add ecx, edi
mov dword [ebp - 0x1c], ecx
test eax, eax
je 0x1012d984
nop dword [eax + eax]
mov ecx, dword [ecx + esi*4]
add ecx, edi
call fcn.10008550
mov edx, dword [ebp - 0xc]
cmp eax, 0xca67b978
mov eax, dword [edx + 0x14]
je 0x1012d981
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, eax
jb 0x1012d960
jmp 0x1012d984
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 8]
cmp ecx, eax
jbe 0x1012d98f
xor eax, eax
jmp 0x1012d9a4
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
mov dword [0x102bac38], eax
push 0x40
push 0x3000
lea ecx, [ebp - 0x24]
push ecx
push 0
lea ecx, [ebp - 0x68]
push ecx
push 0xffffffffffffffff
call eax
mov eax, dword [0x102bac20]
mov ecx, dword [0x102bac1c]
sub eax, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [0x102b6170]
mov dword [ecx + 6], eax
push dword [ebp - 0x24]
push dword [0x102bac1c]
push dword [ebp - 0x68]
call fcn.101e3770
mov eax, dword [ebp - 0x68]
jmp 0x1012db5b
mov eax, dword [0x102bac34]
cmp eax, dword [esi + 4]
jle 0x1012da6c
push 0x102bac34
call fcn.101e23b9
add esp, 4
cmp dword [0x102bac34], 0xffffffff
jne 0x1012da6c
lea eax, [ebp - 0x63]
mov dword [ebp - 0x60], 0xb8
push eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x5c], 0x8dc93300
push ecx
lea edx, [ebp - 0x60]
mov dword [ebp - 0x58], 0x64042454
push edx
mov ecx, 0x102bac28
mov dword [ebp - 0x54], 0xc015ff
mov dword [ebp - 0x50], 0xc4830000
mov dword [ebp - 0x4c], 0xc204
call fcn.1012dcd0
push 0x1020ffb0
call fcn.101e2242
add esp, 4
push 0x102bac34
call fcn.101e236f
add esp, 4
mov eax, dword [0x102bac2c]
sub eax, dword [0x102bac28]
mov dword [ebp - 0x70], eax
mov eax, dword [0x102bac38]
mov dword [ebp - 0x6c], 0
test eax, eax
jne 0x1012db29
mov ecx, 0xa62a3b3b
call fcn.1016fc50
mov edi, dword [eax + 4]
mov eax, 0x5a4d
cmp word [edi], ax
je 0x1012daa9
xor eax, eax
jmp 0x1012db24
mov eax, dword [edi + 0x3c]
cmp dword [eax + edi], 0x4550
je 0x1012dab9
xor eax, eax
jmp 0x1012db24
mov edx, dword [eax + edi + 0x78]
xor esi, esi
mov eax, dword [edx + edi + 0x14]
add edx, edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], 0xffffffff
mov ecx, dword [edx + 0x20]
add ecx, edi
mov dword [ebp - 0x1c], ecx
test eax, eax
je 0x1012db04
nop dword [eax + eax]
mov ecx, dword [ecx + esi*4]
add ecx, edi
call fcn.10008550
mov edx, dword [ebp - 0xc]
cmp eax, 0xca67b978
mov eax, dword [edx + 0x14]
je 0x1012db01
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, eax
jb 0x1012dae0
jmp 0x1012db04
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 8]
cmp ecx, eax
jbe 0x1012db0f
xor eax, eax
jmp 0x1012db24
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
mov dword [0x102bac38], eax
push 0x40
push 0x3000
lea ecx, [ebp - 0x70]
push ecx
push 0
lea ecx, [ebp - 0x6c]
push ecx
push 0xffffffffffffffff
call eax
mov eax, dword [0x102bac2c]
mov ecx, dword [0x102bac28]
sub eax, ecx
push eax
push ecx
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
call fcn.101e3770
mov eax, dword [ebp - 0x6c]
mov dword [0x102b6174], eax
add esp, 0xc
push 0x102bac00
mov dword [0x102bac04], eax
call fcn.101e236f
mov esi, dword [ebp - 0x74]
add esp, 4
mov eax, dword [0x102bac3c]
cmp eax, dword [esi + 4]
jle 0x1012dbc1
push 0x102bac3c
call fcn.101e23b9
add esp, 4
cmp dword [0x102bac3c], 0xffffffff
jne 0x1012dbc1
cmp dword [0x102babf8], 7
mov ecx, 0xd
mov eax, 0x16
cmovne eax, ecx
push 0x102bac3c
mov dword [0x102bac40], eax
call fcn.101e236f
add esp, 4
mov edx, dword [0x102bac04]
mov eax, dword [0x102babf0]
movzx ecx, word [0x102babf4]
mov edi, dword [ebp - 0x7c]
mov dword [edx + 1], eax
mov eax, dword [0x102bac40]
push 0
push 0x1c
mov dword [eax + edx], ecx
lea eax, [ebp - 0xc0]
push eax
mov eax, dword [ebp - 0x80]
push 0
push dword [eax + edi*4]
push 0xffffffffffffffff
call edx
mov ecx, dword [ebp - 0xac]
cmp ecx, 0x20
je 0x1012d150
cmp ecx, 0x40
je 0x1012d150
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret