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

Disassembly:
sub esp, 0x34
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
inc ebx
push 0
mov eax, dword [esi + 0x70]
mov edi, dword [esi + 0x68]
sub edi, dword [esi + 0x64]
shr eax, 1
add edi, 0x17
and eax, 0xffffff01
mov dword [esi + 0x54], edi
mov dword [esp + 0x14], eax
mov ecx, edi
xor eax, eax
shl ebx, cl
mov ecx, dword [esi + 0x64]
inc eax
shl eax, cl
mov dword [esp + 0x3c], eax
add eax, dword [esi + 0x78]
pop edx
adc edx, dword [esi + 0x7c]
add eax, 0xffffffff
mov dword [esi + 0x58], ebx
adc edx, 0xffffffff
cmp edx, dword [esi + 0x7c]
jb 0x10050ac6
ja 0x10050974
cmp eax, dword [esi + 0x78]
jb 0x10050ac6
call fcn.100f4de0
cmp byte [esp + 0x10], 0
mov ecx, edx
mov ebp, eax
mov dword [esp + 0x30], ecx
je 0x100509ba
xor edx, edx
lea eax, [ebx + 1]
add ebx, ebp
mov dword [esp + 0x14], eax
adc edx, ecx
add ebx, 0xffffffff
mov eax, ebx
mov ecx, edi
adc edx, 0xffffffff
call fcn.100f4de0
mov ebp, dword [esp + 0x14]
mov ecx, eax
mov eax, edx
mul ebp
mov edi, eax
mov eax, ecx
mul ebp
add edi, edx
mov ecx, eax
jmp 0x100509d8
add eax, 0xffffffff
mov ecx, edi
adc edx, 0xffffffff
call fcn.100f4de0
mov ecx, eax
mov edi, edx
add ecx, ebp
lea ebp, [ebx + 1]
mov dword [esp + 0x14], ebp
adc edi, dword [esp + 0x30]
mov eax, dword [esi + 0x44]
shr eax, 3
mov dword [esp + 0x34], ecx
test edi, edi
ja 0x10050ac6
jb 0x100509f4
cmp ecx, eax
ja 0x10050ac6
cmp byte [esp + 0x10], 0
mov dword [esi + 0x5c], ecx
jne 0x10050a08
test byte [esi + 0x70], 1
je 0x10050a08
mov bl, 1
jmp 0x10050a0a
xor bl, bl
and dword [esp + 0x2c], 0
xorps xmm0, xmm0
movlpd qword [esp + 0x3c], xmm0
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x3c]
movlpd qword [esp + 0x24], xmm0
test ecx, ecx
je 0x10050b75
mov eax, dword [esp + 0x28]
mov edx, dword [esi + 0x40]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x30], edx
mov dword [esp + 0x20], eax
mov ecx, dword [edx]
mov eax, ecx
mov edi, dword [edx + 4]
and eax, 0xffff8
or eax, 0
jne 0x10050ac6
mov edx, ecx
and ecx, 7
and edx, 0xfff00000
sub dword [esp + 0x18], 1
jne 0x10050ad0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], eax
cmp ecx, 6
jne 0x10050abe
xor bl, bl
cmp byte [esp + 0x10], bl
je 0x10050ac6
mov eax, edx
or eax, edi
je 0x10050ac6
mov eax, edx
mov ecx, edi
add eax, 0x100000
adc ecx, 0
cmp ecx, edi
jb 0x10050ac6
ja 0x10050aa1
cmp eax, edx
jb 0x10050ac6
cmp dword [esi + 0x3c], ecx
ja 0x10050ab3
jb 0x10050aad
cmp dword [esi + 0x38], eax
jae 0x10050ab3
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], ecx
inc dword [esi + 0xec]
jmp 0x10050b51
test ecx, ecx
je 0x10050b51
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
cmp ecx, 6
je 0x10050af1
cmp ecx, 7
je 0x10050af1
cmp ecx, 3
je 0x10050aed
test ecx, ecx
je 0x10050aed
cmp ecx, 1
je 0x10050aed
cmp ecx, 2
jne 0x10050ac6
xor bl, bl
jmp 0x10050b51
mov eax, edx
or eax, edi
je 0x10050ac6
cmp dword [esp + 0x20], edi
ja 0x10050b0b
jb 0x10050b03
cmp ebp, edx
jae 0x10050b0b
mov eax, edi
mov ebp, edx
mov dword [esp + 0x20], eax
cmp ecx, 7
jne 0x10050b1a
xor bl, bl
cmp byte [esp + 0x10], bl
je 0x10050ac6
jmp 0x10050b4b
test bl, bl
je 0x10050b4b
mov ecx, dword [esp + 0x24]
mov eax, ecx
or eax, dword [esp + 0x1c]
je 0x10050b43
mov eax, dword [esp + 0x38]
add eax, ecx
push 0
pop ecx
adc ecx, dword [esp + 0x1c]
cmp eax, edx
jne 0x10050b3f
cmp ecx, edi
je 0x10050b43
xor bl, bl
jmp 0x10050b4b
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], edi
inc dword [esi + 0xe8]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
inc eax
add edx, 8
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
cmp eax, dword [esp + 0x34]
jb 0x10050a4d
mov ecx, dword [esp + 0x20]
jmp 0x10050b79
mov ecx, dword [esp + 0x40]
mov eax, ebp
mov byte [esi + 0x129], bl
or eax, ecx
je 0x10050bca
mov edx, dword [esp + 0x38]
add edx, ebp
push 0
pop eax
adc eax, ecx
cmp eax, ecx
jb 0x10050ac6
ja 0x10050ba2
cmp edx, ebp
jb 0x10050ac6
cmp dword [esi + 0x3c], eax
ja 0x10050bb4
jb 0x10050bae
cmp dword [esi + 0x38], edx
jae 0x10050bb4
mov dword [esi + 0x38], edx
mov dword [esi + 0x3c], eax
cmp ecx, 0x40000000
ja 0x10050ac6
jb 0x10050bca
test ebp, ebp
jae 0x10050ac6
mov al, 1
jmp 0x10050ac8