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

Disassembly:
sub esp, 0x74
mov ecx, dword [eax + 8]
mov eax, dword [edx + 8]
push ebx
push ebp
push esi
mov esi, dword [esp + 0xac]
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x14]
mov ebp, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x84]
mov edx, dword [ecx + 8]
mov ecx, dword [esi + 8]
push edi
mov edi, dword [esp + 0x98]
mov dword [esp + 0x58], eax
mov al, byte [esi + 0xc]
add edi, 3
mov dword [esp + 0x64], edx
mov edx, dword [esi + 4]
mov dword [esp + 0x14], ecx
mov ecx, dword [esi + 0x10]
mov byte [esp + 0x11], al
mov eax, dword [esi + 0x18]
sar edi, 2
mov ebx, 0
mov dword [esp + 0x7c], edi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x80], ebp
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x3c], ebx
je 0x1000c3aa
fld dword [esp + 0x90]
fld dword [esp + 0x8c]
lea eax, [edi - 1]
cmp ebx, eax
jae 0x1000be93
mov dword [esp + 0x34], 4
jmp 0x1000bea7
lea ecx, [eax*4]
mov eax, dword [esp + 0x98]
sub eax, ecx
mov dword [esp + 0x34], eax
cmp dword [esp + 0x94], 0
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], 0
jbe 0x1000c397
mov esi, 7
sub esi, ebx
mov ebx, dword [esp + 0x44]
add esi, esi
add esi, esi
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x64]
lea edi, [ebx + 4]
sub esi, ebx
mov ebx, dword [esp + 0x40]
sub ebx, dword [esp + 0x44]
mov dword [esp + 0x30], edi
mov dword [esp + 0x70], esi
mov dword [esp + 0x60], ebx
jmp 0x1000bf04
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x60]
mov esi, ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x48], eax
mov eax, dword [edi + ebx + 4]
mov ebx, esi
shr ebx, cl
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x4c], eax
and ebx, 0xf
cmp ebx, dword [ecx*4 + 0x1009b600]
mov dword [esp + 0x6c], ebx
je 0x1000c369
mov ebx, dword [esp + 0x48]
or ebx, eax
or ebx, esi
mov esi, dword [esp + 0x3c]
cmp esi, 7
mov dword [esp + 0x28], ebx
je 0x1000bf61
lea eax, [esi*4]
mov ecx, 0x1b
sub ecx, eax
mov eax, ebx
shr eax, cl
test al, 0x3f
jmp 0x1000bf64
test bl, 0x1f
je 0x1000c369
add esi, esi
xor eax, eax
add esi, esi
cmp dword [esp + 0x34], eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x5c], eax
jbe 0x1000c35e
mov ecx, dword [esp + 0x6c]
cmp byte [eax + ecx*4 + 0x1009b618], 0
jne 0x1000c342
mov eax, dword [esi*4 + 0x1009b500]
test ebx, eax
mov dword [esp + 0x74], eax
je 0x1000c342
mov ecx, dword [esi*4 + 0x1009b580]
mov ebx, eax
and ebx, dword [esp + 0x48]
mov edi, eax
and edi, dword [esp + 0x2c]
and eax, dword [esp + 0x4c]
shr ebx, cl
shr edi, cl
shr eax, cl
add ebx, ebx
add ebx, ebx
add ebx, ebx
or ebx, edi
add ebx, ebx
add ebx, ebx
add ebx, ebx
or ebx, eax
cmp esi, 0x1f
jne 0x1000bfdb
add ebx, ebx
mov ecx, dword [esp + 0x54]
mov edi, dword [ecx]
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + ebx*4]
mov esi, dword [ecx + 4]
movzx ecx, byte [edi + eax]
add edi, eax
add esi, eax
mov eax, dword [ecx*4 + 0x10089b00]
mov ebp, eax
mov ecx, edx
shr ebp, 0x10
shr ecx, 0x10
cmp ecx, ebp
jb 0x1000c066
sub dword [esp + 0x14], ebp
mov ecx, eax
and ecx, 0xffff0000
sub edx, ecx
mov ecx, dword [esp + 0x14]
test ecx, 0x8000
mov dword [esp + 0x1c], edx
je 0x1000c03a
cmp byte [esi], 0
mov ebp, dword [esp + 0x20]
setne byte [esp + 0x12]
jmp 0x1000c112
cmp ecx, ebp
jb 0x1000c04b
cmp byte [esi], 0
setne byte [esp + 0x12]
shr eax, 8
jmp 0x1000c09e
mov cl, byte [esi]
mov dl, cl
xor dl, 1
setne byte [esp + 0x12]
mov dl, al
and dl, 1
xor dl, cl
shr eax, 1
mov byte [esi], dl
and al, 0x7f
jmp 0x1000c09a
lea ecx, [ebp + ebp]
cmp dword [esp + 0x14], ecx
jae 0x1000c07d
cmp byte [esi], 0
setne byte [esp + 0x12]
shr eax, 8
jmp 0x1000c096
mov cl, byte [esi]
mov dl, cl
xor dl, 1
setne byte [esp + 0x12]
mov dl, al
and dl, 1
xor dl, cl
shr eax, 1
mov byte [esi], dl
and al, 0x7f
mov dword [esp + 0x14], ebp
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x58]
mov ebp, dword [esp + 0x20]
mov byte [edi], al
cmp dword [esp + 0x18], 0
jne 0x1000c0f2
cmp ebp, ecx
je 0x1000c0e4
mov al, byte [ebp]
add ebp, 1
cmp byte [esp + 0x11], 0xff
mov byte [esp + 0x11], al
je 0x1000c0ce
movzx eax, al
shl eax, 8
add edx, eax
jmp 0x1000c0ea
cmp al, 0x8f
ja 0x1000c0e4
movzx eax, al
shl eax, 9
add edx, eax
mov dword [esp + 0x18], 7
jmp 0x1000c0f2
add edx, 0xff00
mov dword [esp + 0x18], 8
mov eax, dword [esp + 0x14]
sub dword [esp + 0x18], 1
add eax, eax
add edx, edx
test eax, 0x8000
mov dword [esp + 0x14], eax
je 0x1000c0a8
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebp
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
mov ecx, esi
mov eax, 0x80000000
shr eax, cl
mov ecx, dword [esp + 0x70]
or dword [ecx + edi], eax
cmp byte [esp + 0x12], 0
mov dword [esp + 0x78], eax
je 0x1000c33e
mov edx, dword [edi + 4]
mov eax, dword [edi - 4]
mov ecx, dword [edi]
mov ebp, dword [esp + 0x74]
mov edi, edx
or edi, ecx
or edi, eax
test ebp, edi
je 0x1000c160
push esi
push ebx
push ecx
lea ebx, [esp + 0x5c]
call fcn.1000b7b0
add esp, 0xc
jmp 0x1000c16a
and ebx, 0xaa
mov dword [esp + 0x50], ebx
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x50]
mov eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x54]
mov edi, dword [edx]
mov esi, dword [edx + 4]
mov edx, dword [esp + 0x1c]
mov cl, al
shr eax, 1
add edi, eax
add esi, eax
movzx eax, byte [edi]
mov eax, dword [eax*4 + 0x10089b00]
mov ebp, eax
mov ebx, edx
shr ebp, 0x10
shr ebx, 0x10
and cl, 1
cmp ebx, ebp
jb 0x1000c20d
sub dword [esp + 0x14], ebp
mov ebx, eax
and ebx, 0xffff0000
sub edx, ebx
mov ebx, dword [esp + 0x14]
test ebx, 0x8000
mov dword [esp + 0x1c], edx
je 0x1000c1d2
mov dl, byte [esi]
xor dl, cl
setne bl
jmp 0x1000c2af
cmp ebx, ebp
mov bl, byte [esi]
jb 0x1000c1e6
mov esi, dword [esp + 0x14]
xor bl, cl
setne bl
shr eax, 8
jmp 0x1000c240
mov byte [esp + 0x12], bl
xor bl, cl
xor bl, 1
setne byte [esp + 0x13]
mov bl, byte [esp + 0x13]
mov cl, al
and cl, 1
xor cl, byte [esp + 0x12]
shr eax, 1
mov byte [esi], cl
mov esi, dword [esp + 0x14]
and al, 0x7f
jmp 0x1000c240
lea edx, [ebp + ebp]
cmp dword [esp + 0x14], edx
mov dl, byte [esi]
jae 0x1000c223
xor dl, cl
setne bl
shr eax, 8
jmp 0x1000c23a
mov bl, dl
xor bl, cl
xor bl, 1
setne bl
mov cl, al
and cl, 1
xor cl, dl
shr eax, 1
mov byte [esi], cl
and al, 0x7f
mov edx, dword [esp + 0x1c]
mov esi, ebp
mov byte [edi], al
cmp dword [esp + 0x18], 0
jne 0x1000c296
mov eax, dword [esp + 0x20]
cmp eax, dword [esp + 0x58]
je 0x1000c288
mov cl, byte [eax]
add eax, 1
cmp byte [esp + 0x11], 0xff
mov dword [esp + 0x20], eax
mov byte [esp + 0x11], cl
je 0x1000c271
movzx eax, cl
shl eax, 8
add edx, eax
jmp 0x1000c28e
cmp cl, 0x8f
ja 0x1000c288
movzx ecx, cl
shl ecx, 9
add edx, ecx
mov dword [esp + 0x18], 7
jmp 0x1000c296
add edx, 0xff00
mov dword [esp + 0x18], 8
sub dword [esp + 0x18], 1
add esi, esi
add edx, edx
test esi, 0x8000
je 0x1000c242
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
or eax, ecx
or dword [esp + 0x28], eax
test bl, bl
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x2c], eax
je 0x1000c313
mov eax, edi
fld st(0)
or dword [eax], ecx
fchs
mov ecx, dword [esp + 0xa8]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
mov eax, esi
imul eax, dword [esp + 0xac]
add eax, dword [esp + 0x38]
add eax, eax
add eax, eax
fst dword [eax + edx]
mov edx, dword [esp + 0x1c]
fsub st(2)
fstp dword [eax + ecx]
jmp 0x1000c342
mov eax, dword [esp + 0x24]
imul eax, dword [esp + 0xac]
add eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xa8]
add eax, eax
add eax, eax
fst dword [eax + edx]
mov edx, dword [esp + 0x1c]
fld st(0)
fadd st(2)
fstp dword [eax + ecx]
jmp 0x1000c342
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x5c]
add eax, 1
add esi, 1
cmp eax, dword [esp + 0x34]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x24], esi
jb 0x1000bf82
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x60]
mov dword [ecx + edi], eax
mov eax, dword [esp + 0x38]
add eax, 1
add edi, 4
cmp eax, dword [esp + 0x94]
mov dword [esp + 0x38], eax
mov dword [esp + 0x30], edi
jb 0x1000bef8
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x7c]
mov esi, dword [esp + 0xb0]
add ebx, 1
cmp ebx, edi
mov dword [esp + 0x3c], ebx
jb 0x1000be82
fstp st(0)
fstp st(0)
mov eax, dword [esp + 0x14]
mov cl, byte [esp + 0x11]
mov dword [esi + 8], eax
mov dword [esi + 4], edx
mov edx, dword [esp + 0x18]
mov byte [esi + 0xc], cl
mov ecx, dword [esi + 0x14]
mov eax, ebp
sub eax, dword [esp + 0x80]
mov dword [esi + 0x10], edx
pop edi
mov dword [ecx + 8], eax
mov edx, dword [esi + 0x14]
pop esi
mov dword [edx], ebp
pop ebp
pop ebx
add esp, 0x74
ret