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

Disassembly:
mov eax, 0xd0
call fcn.101ebae0
mov eax, dword [0x102ab2c0]
xor eax, esp
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0xd8]
push ebx
push ebp
push esi
mov esi, dword [esp + 0xe8]
mov dword [esp + 0x14], eax
mov eax, dword [eax]
push edi
mov edi, dword [esp + 0xe4]
mov dword [esp + 0xbc], edi
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ebx, dword [edi + esi*8 + 0xc0]
mov eax, ebx
mov ebp, dword [edi + esi*8 + 0xc4]
and eax, ebp
mov dword [esp + 0x1c], esi
mov dword [esp + 0x10], 0
cmp eax, 0xffffffff
je 0x101410c1
mov esi, edx
mov eax, ecx
mov edx, ebp
mov ecx, ebx
cmp edx, esi
jb 0x101410b9
ja 0x101410bd
cmp ecx, eax
ja 0x101410bd
mov ecx, eax
mov edx, esi
mov esi, dword [esp + 0x1c]
mov dword [edi + esi*8 + 0xc0], ecx
mov dword [edi + esi*8 + 0xc4], edx
cmp byte [edi + 0x169], 0
jne 0x101410e8
cmp esi, 1
jne 0x101410e8
mov byte [edi + 0x169], 1
mov dword [esp + 0x10], esi
mov ebp, dword [esp + 0x18]
xor esi, esi
mov edx, dword [esp + 0x1c]
xor ebx, ebx
shl edx, 5
add edx, edi
mov dword [esp + 0x28], esi
mov eax, dword [ebp]
mov dword [esp + 0x24], edx
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x2c]
push eax
push dword [edx + 0xc]
mov dword [esp + 0x34], ecx
call fcn.1003c670
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x1014113d
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 4]
mov dword [esp + 0x14], eax
test eax, eax
je 0x101411cb
lea edi, [esp + 0x28]
mov ecx, dword [eax + 0x38]
mov edx, ebx
mov dword [esp + 0x20], ecx
shl edx, 4
nop dword [eax]
cmp ebx, dword [ebp + 4]
jae 0x101411c0
mov ebp, dword [ebp]
mov esi, dword [eax + 4]
add ebp, edx
mov ecx, dword [eax]
cmp esi, dword [ebp + 4]
jb 0x10141177
ja 0x1014116b
cmp ecx, dword [ebp]
jb 0x10141177
cmp esi, dword [ebp + 0xc]
jb 0x10141191
ja 0x101411ae
cmp ecx, dword [ebp + 8]
jbe 0x10141191
cmp esi, dword [ebp + 0xc]
ja 0x101411ae
jb 0x10141183
cmp ecx, dword [ebp + 8]
ja 0x101411ae
mov eax, dword [esp + 0x14]
inc ebx
mov ebp, dword [esp + 0x18]
add edx, 0x10
jmp 0x10141150
push esi
push ecx
push dword [esp + 0x2c]
call fcn.10141c30
mov eax, dword [esp + 0x20]
add esp, 0xc
mov dword [edi], eax
lea edi, [eax + 0x3c]
mov dword [edi], 0
mov ecx, dword [esp + 0x20]
mov eax, ecx
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
test ecx, ecx
jne 0x10141141
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0xbc]
test esi, esi
jne 0x101411de
cmp dword [esp + 0x10], esi
je 0x1014147c
jmp 0x10141473
mov ecx, dword [ebp]
mov eax, dword [esi]
cmp eax, dword [ecx + 8]
jne 0x101412a7
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0xc]
jne 0x101412a7
mov eax, esi
nop word [eax + eax]
test byte [eax + 0x20], 8
jne 0x10141212
mov eax, dword [eax + 0x3c]
test eax, eax
jne 0x10141200
jmp 0x101412a7
push dword [edi + 0xac]
mov eax, dword [edi + 0xa8]
call eax
add esp, 4
mov dword [esp + 0xbc], eax
cmp dword [edi + 0x12c], 0
mov ecx, edx
mov dword [esp + 0x20], ecx
ja 0x10141250
jb 0x10141244
cmp dword [edi + 0x128], 0
ja 0x10141250
mov dword [edi + 0x128], eax
mov dword [edi + 0x12c], ecx
cmp byte [edi + 0x168], 0
mov ebx, dword [ebp + 8]
mov ebp, dword [ebp + 0xc]
je 0x10141284
push dword [edi + 0x8bc]
push dword [edi + 0x8b8]
push ebp
push ebx
call fcn.10141b40
mov ecx, dword [esp + 0x30]
mov ebx, eax
mov eax, dword [esp + 0xcc]
add esp, 0x10
mov ebp, edx
push dword [esi + 0x14]
push dword [esi + 0x10]
push ecx
push eax
call fcn.10141b60
push edx
push eax
push ebp
push ebx
push dword [edi + 0xb0]
call fcn.100ebf50
mov ebp, dword [esp + 0x3c]
add esp, 0x24
test byte [ebp + 0x28], 1
mov ebx, dword [esp + 0x1c]
je 0x10141338
mov ecx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
cmp ecx, dword [edi + ebx*8 + 0x154]
jb 0x10141338
ja 0x101412cf
cmp eax, dword [edi + ebx*8 + 0x150]
jbe 0x10141338
mov dword [edi + ebx*8 + 0x150], eax
mov dword [edi + ebx*8 + 0x154], ecx
mov eax, dword [ebp]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x78], eax
mov eax, ebx
mov dword [esp + 0x74], ecx
lea ecx, [esp + 0x74]
shl eax, 5
push ecx
push dword [eax + edi + 0xc]
call fcn.1003c670
add esp, 8
test eax, eax
je 0x10141338
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp + 0xbc], ecx
lea ecx, [esp + 0xbc]
mov dword [esp + 0xc0], eax
mov eax, dword [edi + 0xb4]
push ecx
push dword [edi + 0xb8]
mov eax, dword [eax + 0x34]
call eax
add esp, 8
push ebx
push edi
call fcn.10140040
add esp, 8
test eax, eax
je 0x10141353
push 0
push eax
push ebx
push edi
call fcn.10140610
add esp, 0x10
xorps xmm0, xmm0
movups xmmword [esp + 0xbc], xmm0
nop
test byte [esi + 0x20], 4
je 0x1014140d
mov eax, dword [esi + 8]
sub dword [edi + 0x130], eax
sbb dword [edi + 0x134], 0
mov ecx, dword [esi + 0x20]
test cl, 8
je 0x10141397
mov eax, dword [esi + 8]
and ecx, 3
sub dword [edi + ecx*8 + 0x138], eax
sbb dword [edi + ecx*8 + 0x13c], 0
mov ecx, dword [esi + 0x18]
mov eax, ecx
mov edx, dword [esi + 0x1c]
and eax, edx
cmp eax, 0xffffffff
je 0x1014140d
mov ebp, ecx
mov eax, edx
add ebp, 1
adc eax, 0
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x20]
and eax, 3
add eax, 4
lea eax, [eax + eax*2]
lea ebx, [edi + eax*8]
mov eax, dword [esp + 0x10]
cmp eax, dword [ebx + 0x14]
jb 0x1014140d
ja 0x101413d3
cmp ebp, dword [ebx + 0x10]
jbe 0x1014140d
lea eax, [esp + 0xcc]
mov dword [esp + 0xd4], ecx
push eax
xorps xmm0, xmm0
mov dword [esp + 0xdc], edx
push ebx
movlpd qword [esp + 0xd4], xmm0
call fcn.10138ff0
add esp, 8
cmp eax, 1
jne 0x1014140d
mov eax, dword [esp + 0x10]
mov dword [ebx + 0x10], ebp
mov dword [ebx + 0x14], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x14]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
mov eax, dword [esi + 8]
mov dword [esp + 0xc4], eax
push dword [esi + 0x30]
mov eax, dword [esi + 0x28]
mov ebx, dword [esi + 0x3c]
call eax
add esp, 4
test byte [esi + 0x20], 4
je 0x1014145b
mov eax, dword [edi + 0xb4]
lea ecx, [esp + 0xbc]
push ecx
push dword [edi + 0xb8]
mov eax, dword [eax + 0x24]
call eax
add esp, 8
mov esi, ebx
test ebx, ebx
jne 0x10141360
cmp byte [edi + 0x169], bl
je 0x10141473
mov dword [edi + 0xbc], ebx
push edi
call fcn.10140760
add esp, 4
mov ecx, dword [esp + 0xdc]
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.101ebfaa
add esp, 0xd0
ret