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

Disassembly:
sub esp, 0x68
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x98]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x78]
mov ebx, ecx
push edi
mov edi, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0xa4]
mov ebp, dword [esi + 0x1c8]
mov dword [esp + 0x10], eax
mov eax, edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x34], 0xffffffff
mov dword [esp + 0x20], ebp
test ecx, ecx
je 0x1007d512
test edx, edx
je 0x1007d512
mov edx, dword [esp + 0xa0]
dec eax
cmp dword [ecx], edx
je 0x1007d575
add ecx, 4
test eax, eax
jne 0x1007d506
mov edx, dword [esp + 0x8c]
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x7c], edx
cmp edx, dword [esp + 0x94]
jg 0x1007d823
mov ebp, dword [esp + 0x88]
jl 0x1007d550
cmp ebp, dword [esp + 0x90]
jae 0x1007d81f
mov ecx, edi
mov eax, ebx
sub ecx, ebp
sbb eax, edx
test eax, eax
jg 0x1007d6e0
jl 0x1007d56e
cmp ecx, 0x10000
jae 0x1007d6e0
mov edi, ebp
jmp 0x1007d6f1
mov ebx, dword [esp + 0x90]
mov eax, ebx
mov edx, dword [esp + 0x94]
cmp dword [esp + 0xa0], ebp
je 0x1007d5c9
nop
lea ecx, [esp + 0x98]
mov dword [esp + 0xa0], ebp
push ecx
lea ecx, [esp + 0xa4]
push ecx
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push edx
push eax
push esi
call fcn.1007e260
add esp, 0x1c
cmp dword [esp + 0xa0], ebp
jne 0x1007d590
mov edi, dword [esp + 0xac]
lea eax, [edi + 1]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x38]
test eax, eax
je 0x1007d5e6
push eax
call fcn.10094af5
add esp, 4
mov eax, dword [esi + 0x40]
test eax, eax
je 0x1007d5f6
push eax
call fcn.10094af5
add esp, 4
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x1007d606
push eax
call fcn.10094af5
add esp, 4
mov eax, dword [esi + 0x34]
lea eax, [eax*8 + 8]
push eax
call fcn.1009569a
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x34]
shl eax, 5
push eax
push dword [esi + 0x48]
call fcn.100963ec
mov dword [esi + 0x48], eax
mov eax, dword [esi + 0x34]
shl eax, 4
push eax
push dword [esi + 0x4c]
call fcn.100963ec
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 0x34]
shl eax, 2
push eax
call fcn.1009569a
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x34]
shl eax, 3
push eax
call fcn.1009569a
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x34]
shl eax, 4
push eax
call fcn.1009569a
mov ecx, dword [esp + 0xb4]
add esp, 0x20
mov edx, dword [esp + 0x84]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x38]
mov dword [eax + edi*8 + 8], ebx
mov dword [eax + edi*8 + 0xc], ecx
mov eax, dword [esi + 0x38]
mov ecx, dword [esp + 0x80]
mov dword [eax + edi*8], ecx
mov ecx, dword [esp + 0x98]
mov dword [eax + edi*8 + 4], edx
mov edx, dword [esp + 0x9c]
test edx, edx
jg 0x1007d6c9
jl 0x1007d6af
test ecx, ecx
jae 0x1007d6c9
xorps xmm0, xmm0
movlpd qword [esp + 0x90], xmm0
mov edx, dword [esp + 0x94]
mov ecx, dword [esp + 0x90]
mov eax, dword [esi + 0x44]
add edi, edi
mov dword [eax + edi*8 + 8], ecx
mov dword [eax + edi*8 + 0xc], edx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
add edi, ebp
push 0
push 2
adc ebx, edx
push ebx
push edi
call fcn.10085140
mov edi, eax
mov ecx, dword [esi]
mov ebx, edx
test ecx, ecx
je 0x1007d807
cmp dword [esi + 8], edi
jne 0x1007d707
cmp dword [esi + 0xc], ebx
je 0x1007d73a
mov eax, dword [esi + 0x2c4]
test eax, eax
je 0x1007d7ef
push 0
push ebx
push edi
push ecx
call eax
add esp, 0x10
cmp eax, 0xffffffff
je 0x1007d7ef
lea eax, [esi + 0x18]
mov dword [esi + 8], edi
push eax
mov dword [esi + 0xc], ebx
call fcn.100cffe0
add esp, 4
push 0xffffffffffffffff
push 0xffffffffffffffff
lea eax, [esp + 0x40]
push eax
push esi
call fcn.1007e120
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x88], ecx
mov eax, edx
mov dword [esp + 0x2c], eax
cmp ecx, 0xffffff80
jne 0x1007d765
cmp eax, 0xffffffff
je 0x1007d7e2
test eax, eax
jl 0x1007d7b1
jg 0x1007d76f
test ecx, ecx
jb 0x1007d7b1
lea eax, [esp + 0x38]
push eax
call fcn.100cef90
mov edx, dword [esp + 0xa8]
add esp, 4
mov ecx, dword [esp + 0xa8]
test edx, edx
je 0x1007d79e
test ecx, ecx
je 0x1007d79e
dec ecx
cmp dword [edx], eax
je 0x1007d7ce
add edx, 4
test ecx, ecx
jne 0x1007d792
mov eax, dword [esp + 0x88]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], edi
cmp edx, ebx
jg 0x1007d81f
jl 0x1007d550
cmp ebp, edi
jmp 0x1007d54a
mov edx, dword [esi + 0xc]
mov ebp, dword [esi + 8]
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x7c], edx
jmp 0x1007d7bd
pop edi
pop esi
pop ebp
mov eax, 0xffffff80
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffff80
mov dword [esp + 0x88], 0xffffffff
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffff7f
mov dword [esp + 0x88], 0xffffffff
pop ebx
add esp, 0x68
ret
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
lea ecx, [ebp + 1]
mov edi, dword [esp + 0x14]
mov eax, ebx
mov edx, edi
cmp ecx, ebp
je 0x1007d866
lea ecx, [esp + 0x30]
mov dword [esp + 0x7c], ebp
push ecx
lea ecx, [esp + 0x80]
push ecx
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push edx
push eax
push esi
call fcn.1007e260
add esp, 0x1c
cmp dword [esp + 0x7c], ebp
jne 0x1007d836
push edi
push ebx
push esi
call fcn.1007eaf0
add esp, 0xc
test eax, eax
jne 0x1007d9ea
push eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x68]
push eax
push esi
call fcn.1007de20
add esp, 0x18
test eax, eax
jne 0x1007d9ea
mov eax, dword [esi + 0x1c8]
mov dword [esp + 0xa4], eax
mov eax, dword [esi + 8]
mov dword [esp + 0xa8], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x58]
push eax
push esi
call fcn.1007e4f0
mov ebx, dword [esp + 0xb4]
mov ebp, eax
mov edi, dword [esp + 0x30]
mov dword [esp + 0x90], edx
lea ecx, [ebx + 1]
push ecx
push dword [esp + 0x30]
push edi
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esi + 0xc]
push dword [esi + 8]
push dword [esp + 0x44]
push dword [esp + 0x44]
push esi
call fcn.1007d4a0
add esp, 0x3c
test eax, eax
jne 0x1007d9ea
test edi, edi
je 0x1007d934
push edi
call fcn.10094af5
add esp, 4
mov eax, dword [esi + 0x38]
mov ecx, dword [esp + 0x10]
mov dword [eax + ebx*8 + 8], ecx
mov ecx, dword [esp + 0x14]
mov dword [eax + ebx*8 + 0xc], ecx
mov eax, dword [esi + 0x40]
mov ecx, dword [esp + 0xa4]
mov dword [eax + ebx*4 + 4], ecx
mov eax, dword [esi + 0x3c]
mov ecx, dword [esp + 0xa8]
mov dword [eax + ebx*8 + 8], ecx
mov ecx, dword [esp + 0x7c]
mov dword [eax + ebx*8 + 0xc], ecx
lea eax, [ebx + 1]
movups xmm0, xmmword [esp + 0x58]
mov ecx, dword [esp + 0x30]
shl eax, 5
add eax, dword [esi + 0x48]
shl ebx, 4
movups xmmword [eax], xmm0
movups xmm0, xmmword [esp + 0x68]
movups xmmword [eax + 0x10], xmm0
mov eax, dword [esi + 0x4c]
movups xmm0, xmmword [esp + 0x48]
movups xmmword [eax + ebx + 0x10], xmm0
mov eax, dword [esi + 0x44]
mov dword [eax + ebx + 8], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + ebx + 0xc], ecx
mov eax, dword [esi + 0x44]
mov ecx, dword [esp + 0x88]
mov dword [eax + ebx + 0x10], ebp
mov dword [eax + ebx + 0x14], ecx
mov eax, dword [esi + 0x44]
sub dword [eax + ebx + 0x18], ebp
sbb dword [eax + ebx + 0x1c], ecx
mov eax, dword [esi + 0x44]
cmp dword [eax + ebx + 0x1c], 0
jg 0x1007d9e8
jl 0x1007d9d8
cmp dword [eax + ebx + 0x18], 0
jae 0x1007d9e8
mov dword [eax + ebx + 0x18], 0
mov dword [eax + ebx + 0x1c], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret