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

Disassembly:
sub esp, 0xa0
push ebx
push ebp
push esi
mov esi, eax
mov ecx, dword [esi + 0x18]
mov eax, 1
xor ebx, ebx
lea ebp, [esi + 0x18]
mov dword [esp + 0x38], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x74], eax
mov eax, dword [esi]
imul ecx, eax
push edi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x2c], eax
test ecx, ecx
jge 0x10050552
mov eax, ebp
mov ecx, esi
call fcn.1004c280
lea edi, [esp + 0x3c]
test eax, eax
jl 0x1005053d
mov eax, ebp
mov ebx, esi
call fcn.1004c610
test eax, eax
jne 0x1005056b
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x3c], edx
jmp 0x1005056b
mov eax, esi
mov ebx, ebp
call fcn.1004c610
test eax, eax
jne 0x1005056b
mov ecx, dword [esp + 0x2c]
neg ecx
jmp 0x10050567
mov ecx, ebp
mov eax, esi
lea edi, [esp + 0x3c]
call fcn.1004c400
cmp eax, ebx
jne 0x1005056b
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x3c], ecx
mov edi, eax
test eax, eax
jne 0x10050d12
mov eax, dword [esp + 0xb4]
add eax, 4
lea ecx, [esp + 0x3c]
call fcn.1004c310
test eax, eax
jl 0x100505c4
lea esp, [esp]
mov eax, dword [esp + 0xb4]
lea ebx, [esp + 0x3c]
add eax, 4
mov edi, ebx
call fcn.1004c610
mov edi, eax
test edi, edi
jne 0x10050d12
mov eax, dword [esp + 0xb4]
add eax, 4
mov ecx, ebx
call fcn.1004c310
test eax, eax
jge 0x10050590
lea edx, [esp + 0x3c]
mov eax, edx
push edx
push eax
lea eax, [esp + 0x5c]
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xb4]
push ecx
lea eax, [esp + 0x58]
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov ebx, dword [esi]
mov edx, dword [ebp]
inc dword [0x101dd2f8]
imul edx, ebx
mov dword [esp + 0x2c], ebx
test edx, edx
jle 0x10050657
mov eax, ebp
mov ecx, esi
call fcn.1004c280
lea edi, [esp + 0x14]
test eax, eax
jl 0x1005063e
mov eax, ebp
mov ebx, esi
call fcn.1004c610
test eax, eax
jne 0x10050670
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x14], esi
jmp 0x10050674
mov eax, esi
mov ebx, ebp
call fcn.1004c610
test eax, eax
jne 0x10050670
mov esi, dword [esp + 0x2c]
neg esi
mov dword [esp + 0x14], esi
jmp 0x10050674
mov ecx, ebp
mov eax, esi
lea edi, [esp + 0x14]
call fcn.1004c400
test eax, eax
jne 0x10050670
mov esi, ebx
mov dword [esp + 0x14], esi
jmp 0x10050674
mov esi, dword [esp + 0x14]
mov edi, eax
test eax, eax
jne 0x10050d12
test esi, esi
jge 0x10050754
mov dword [esp + 0x2c], eax
mov eax, 1
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x94], eax
jmp 0x100506b0
lea eax, [esp + 0x8c]
lea ecx, [esp + 0x14]
call fcn.1004c310
test eax, eax
je 0x10050754
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 4]
add eax, 4
imul ecx, esi
test ecx, ecx
jge 0x10050727
lea ecx, [esp + 0x14]
call fcn.1004c280
lea edi, [esp + 0x14]
test eax, eax
jl 0x10050708
mov eax, dword [esp + 0xb4]
add eax, 4
mov ebx, edi
call fcn.1004c610
test eax, eax
jne 0x1005073e
mov dword [esp + 0x14], esi
jmp 0x10050742
mov ebx, dword [esp + 0xb4]
lea eax, [esp + 0x14]
add ebx, 4
call fcn.1004c610
test eax, eax
jne 0x1005073e
neg esi
mov dword [esp + 0x14], esi
jmp 0x10050742
mov ecx, eax
lea eax, [esp + 0x14]
mov edi, eax
call fcn.1004c400
test eax, eax
jne 0x1005073e
mov dword [esp + 0x14], esi
jmp 0x10050742
mov esi, dword [esp + 0x14]
mov edi, eax
test eax, eax
jne 0x10050d12
test esi, esi
jl 0x100506b0
lea edx, [esp + 0x14]
mov eax, edx
push edx
push eax
lea eax, [esp + 0x50]
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xb4]
push ecx
lea eax, [esp + 0x4c]
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov esi, dword [esp + 0x54]
mov edx, dword [esp + 0x48]
inc dword [0x101dd2f8]
imul edx, esi
test edx, edx
jle 0x100507ea
lea eax, [esp + 0x48]
lea ecx, [esp + 0x54]
call fcn.1004c280
lea edi, [esp + 0x20]
test eax, eax
jl 0x100507d1
lea eax, [esp + 0x48]
lea ebx, [esp + 0x54]
call fcn.1004c610
test eax, eax
jne 0x10050805
mov dword [esp + 0x20], esi
jmp 0x10050809
lea eax, [esp + 0x54]
lea ebx, [esp + 0x48]
call fcn.1004c610
test eax, eax
jne 0x10050805
neg esi
mov dword [esp + 0x20], esi
jmp 0x10050809
lea ecx, [esp + 0x48]
lea eax, [esp + 0x54]
lea edi, [esp + 0x20]
call fcn.1004c400
test eax, eax
jne 0x10050805
mov dword [esp + 0x20], esi
jmp 0x10050809
mov esi, dword [esp + 0x20]
mov edi, eax
test eax, eax
jne 0x10050d12
test esi, esi
jge 0x100508f4
mov dword [esp + 0x88], eax
mov eax, 1
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
lea eax, [esp + 0x88]
mov dword [esp + 0xa0], eax
jmp 0x10050850
lea eax, [esp + 0x98]
lea ecx, [esp + 0x20]
call fcn.1004c310
test eax, eax
je 0x100508f4
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 4]
add eax, 4
imul ecx, esi
test ecx, ecx
jge 0x100508c7
lea ecx, [esp + 0x20]
call fcn.1004c280
lea edi, [esp + 0x20]
test eax, eax
jl 0x100508a8
mov eax, dword [esp + 0xb4]
add eax, 4
mov ebx, edi
call fcn.1004c610
test eax, eax
jne 0x100508de
mov dword [esp + 0x20], esi
jmp 0x100508e2
mov ebx, dword [esp + 0xb4]
lea eax, [esp + 0x20]
add ebx, 4
call fcn.1004c610
test eax, eax
jne 0x100508de
neg esi
mov dword [esp + 0x20], esi
jmp 0x100508e2
mov ecx, eax
lea eax, [esp + 0x20]
mov edi, eax
call fcn.1004c400
test eax, eax
jne 0x100508de
mov dword [esp + 0x20], esi
jmp 0x100508e2
mov esi, dword [esp + 0x20]
mov edi, eax
test eax, eax
jne 0x10050d12
test esi, esi
jl 0x10050850
mov eax, dword [esp + 0xc0]
lea esi, [eax + 0x18]
lea ecx, [esp + 0x60]
call fcn.1004c6e0
mov edi, eax
test edi, edi
jne 0x10050d12
mov eax, dword [esp + 0xb4]
add eax, 4
lea ecx, [esp + 0x60]
call fcn.1004c310
test eax, eax
jl 0x1005095e
jmp 0x10050930
mov ebp, dword [esp + 0xb4]
lea ebx, [esp + 0x60]
add ebp, 4
mov eax, ebp
mov edi, ebx
call fcn.1004c610
mov edi, eax
test edi, edi
jne 0x10050d12
mov eax, ebp
mov ecx, ebx
call fcn.1004c310
test eax, eax
jge 0x10050930
mov eax, dword [esp + 0xc0]
lea ecx, [esp + 0x30]
call fcn.1004c730
mov edi, eax
test edi, edi
jne 0x10050d12
mov esi, dword [esp + 0x30]
test esi, esi
jge 0x10050a54
mov dword [esp + 0x84], eax
mov eax, 1
lea edx, [esp + 0x84]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
lea esp, [esp]
lea eax, [esp + 0xa4]
lea ecx, [esp + 0x30]
call fcn.1004c310
test eax, eax
je 0x10050a54
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 4]
add eax, 4
imul ecx, esi
test ecx, ecx
jge 0x10050a27
lea ecx, [esp + 0x30]
call fcn.1004c280
lea edi, [esp + 0x30]
test eax, eax
jl 0x10050a08
mov eax, dword [esp + 0xb4]
add eax, 4
mov ebx, edi
call fcn.1004c610
test eax, eax
jne 0x10050a3e
mov dword [esp + 0x30], esi
jmp 0x10050a42
mov ebx, dword [esp + 0xb4]
lea eax, [esp + 0x30]
add ebx, 4
call fcn.1004c610
test eax, eax
jne 0x10050a3e
neg esi
mov dword [esp + 0x30], esi
jmp 0x10050a42
mov ecx, eax
lea eax, [esp + 0x30]
mov edi, eax
call fcn.1004c400
test eax, eax
jne 0x10050a3e
mov dword [esp + 0x30], esi
jmp 0x10050a42
mov esi, dword [esp + 0x30]
mov edi, eax
test eax, eax
jne 0x10050d12
test esi, esi
jl 0x100509b0
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x74]
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xb4]
push ecx
lea eax, [esp + 0x70]
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
inc dword [0x101dd2f8]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x80]
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xb4]
push ecx
lea eax, [esp + 0x7c]
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xbc]
inc dword [0x101dd2f8]
lea esi, [esp + 0x78]
lea eax, [esp + 0x6c]
call fcn.1004c6e0
mov edi, eax
test edi, edi
jne 0x10050d12
mov edx, dword [esp + 0xb4]
mov eax, dword [esp + 0xbc]
push edx
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov eax, dword [esp + 0xbc]
inc dword [0x101dd2f8]
push eax
push eax
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
mov eax, dword [esp + 0xb4]
push eax
mov eax, dword [esp + 0xc0]
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov ebx, dword [esp + 0xbc]
inc dword [0x101dd2f8]
add ebx, 0x18
lea eax, [esp + 0x6c]
mov ecx, ebx
call fcn.1004c730
mov edi, eax
test edi, edi
jne 0x10050d12
cmp dword [ebx], eax
mov ebp, dword [esp + 0xb4]
jge 0x10050bb9
push ebx
xor eax, eax
call fcn.1004c3d0
add esp, 4
test eax, eax
je 0x10050bb9
lea esi, [ebp + 4]
mov eax, ebx
mov ecx, ebx
call fcn.1004c6e0
mov edi, eax
test edi, edi
jne 0x10050d12
cmp dword [ebx], eax
jl 0x10050b90
push ebx
push ebx
mov eax, ebx
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
push ebp
mov eax, ebx
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
mov ecx, dword [esp + 0xc4]
push ebx
mov esi, 1
add dword [0x101dd2f8], esi
push ecx
mov eax, ebx
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
push ebp
mov eax, ebx
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
add dword [0x101dd2f8], esi
mov esi, dword [esp + 0xb8]
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0x58]
push eax
mov eax, esi
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
push ebp
mov eax, esi
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
lea ecx, [esp + 0x20]
push ecx
lea edx, [ebp + 0x10]
add esi, 0x18
mov ebx, 1
add dword [0x101dd2f8], ebx
push edx
mov eax, esi
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
push ebp
mov eax, esi
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
add dword [0x101dd2f8], ebx
lea eax, [esp + 0x48]
mov ecx, esi
call fcn.1004c6e0
mov edi, eax
test edi, edi
jne 0x10050d12
lea eax, [ebp + 4]
mov ecx, esi
call fcn.1004c310
test eax, eax
jl 0x10050ce5
lea eax, [ebp + 4]
mov ebx, esi
mov edi, esi
call fcn.1004c610
mov edi, eax
test edi, edi
jne 0x10050d12
lea eax, [ebp + 4]
mov ecx, esi
call fcn.1004c310
test eax, eax
jge 0x10050cc2
lea ebx, [edi + 1]
lea eax, [esp + 0x20]
push esi
push eax
mov eax, esi
call fcn.1004caa0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10050d12
push ebp
mov eax, esi
call fcn.1004dbe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x10050d12
add dword [0x101dd2f8], ebx
mov edx, dword [esp + 0x44]
xor esi, esi
lea ebx, [esi + 1]
cmp edx, esi
je 0x10050d44
mov eax, dword [esp + 0x40]
mov ecx, edx
cmp eax, esi
je 0x10050d3b
lea esp, [esp]
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050d30
push edx
call fcn.100d1800
add esp, 4
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
cmp ecx, esi
je 0x10050d78
mov eax, dword [esp + 0x58]
cmp eax, esi
je 0x10050d6f
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050d60
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.100d1800
add esp, 4
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
cmp edx, esi
je 0x10050daa
mov eax, dword [esp + 0x18]
mov ecx, edx
cmp eax, esi
je 0x10050da1
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050d96
push edx
call fcn.100d1800
add esp, 4
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], esi
cmp ecx, esi
je 0x10050dde
mov eax, dword [esp + 0x4c]
cmp eax, esi
je 0x10050dd5
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050dc6
mov ecx, dword [esp + 0x50]
push ecx
call fcn.100d1800
add esp, 4
mov edx, dword [esp + 0x28]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
cmp edx, esi
je 0x10050e14
mov eax, dword [esp + 0x24]
mov ecx, edx
cmp eax, esi
je 0x10050e0b
lea esp, [esp]
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050e00
push edx
call fcn.100d1800
add esp, 4
mov edx, dword [esp + 0x68]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], esi
cmp edx, esi
je 0x10050e46
mov eax, dword [esp + 0x64]
mov ecx, edx
cmp eax, esi
je 0x10050e3d
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050e32
push edx
call fcn.100d1800
add esp, 4
mov edx, dword [esp + 0x38]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], esi
cmp edx, esi
je 0x10050e78
mov eax, dword [esp + 0x34]
mov ecx, edx
cmp eax, esi
je 0x10050e6f
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050e64
push edx
call fcn.100d1800
add esp, 4
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], esi
cmp ecx, esi
je 0x10050eac
mov eax, dword [esp + 0x70]
cmp eax, esi
je 0x10050ea3
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050e94
mov ecx, dword [esp + 0x74]
push ecx
call fcn.100d1800
add esp, 4
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], esi
cmp ecx, esi
je 0x10050eeb
mov eax, dword [esp + 0x7c]
cmp eax, esi
je 0x10050ee2
jmp 0x10050ed0
sub eax, ebx
mov dword [ecx], esi
add ecx, 4
cmp eax, esi
jne 0x10050ed0
mov ecx, dword [esp + 0x80]
push ecx
call fcn.100d1800
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret