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

Disassembly:
sub esp, 0xc8
mov eax, dword [esp + 0xd0]
push ebx
push ebp
mov ebp, dword [ecx + 0xc]
push esi
mov esi, dword [esp + 0xd8]
mov ebx, dword [esi + 8]
push edi
mov edi, edx
mov edx, dword [esi + 0xc]
mov dword [esp + 0x74], edx
mov edx, dword [ecx + 8]
cmp ebx, edx
mov dword [esp + 0x70], ebx
jle 0x44d208
mov dword [esp + 0x70], edx
mov ebx, edx
cmp dword [esp + 0x74], ebp
jle 0x44d212
mov dword [esp + 0x74], ebp
test ebx, ebx
jle 0x44d523
cmp dword [esp + 0x74], 0
jle 0x44d523
mov ebx, dword [ecx + 0x10]
mov ecx, dword [ecx + 4]
mov ebp, dword [esi + 0x10]
mov esi, dword [esi + 4]
add ecx, ecx
add ecx, ecx
mov dword [esp + 0xa8], ecx
imul ecx, eax
add esi, esi
add esi, esi
mov dword [esp + 0xc4], esi
mov esi, dword [edi + 4]
mov edi, dword [edi + 8]
mov dword [esp + 0x44], ecx
neg ecx
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x70]
mov dword [esp + 0x34], ecx
sub esi, eax
mov ecx, edi
imul ecx, eax
mov dword [esp + 0x18], ebp
mov dword [esp + 0x80], esi
mov esi, dword [esp + 0x74]
mov ebp, 1
sub esi, eax
sub ebp, eax
imul ebp, edi
mov edx, eax
imul edx, eax
mov dword [esp + 0x7c], esi
mov dword [esp + 0x8c], edi
mov esi, eax
neg esi
mov dword [esp + 0x3c], ecx
lea ecx, [eax*4]
mov edi, ebx
add esi, esi
sub edi, ecx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x1c], ebx
add ebx, ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x14], 0
mov dword [esp + 0x78], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x4c], edi
mov dword [esp + 0x24], ebx
jmp 0x44d2ef
mov eax, dword [esp + 0xe0]
mov edx, dword [esp + 0x48]
mov esi, dword [esp + 0x78]
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x24]
xor ecx, ecx
lea ebx, [eax + eax]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x28], esi
mov dword [esp + 0x40], edi
jmp 0x44d32b
mov eax, dword [esp + 0xe0]
mov edx, dword [esp + 0x48]
cmp ecx, eax
lea esi, [edx + edx]
mov dword [esp + 0x64], esi
mov dword [esp + 0x58], edx
mov dword [esp + 0x60], esi
mov dword [esp + 0x54], edx
jl 0x44d35e
mov edi, dword [esp + 0x88]
mov ebx, dword [esp + 0x38]
add ebx, edi
mov edi, dword [esp + 0x10]
movzx edi, word [ebx + edi + 2]
and edi, edx
mov dword [esp + 0x58], edi
cmp ecx, dword [esp + 0x80]
jge 0x44d382
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x30]
add edi, ebx
mov ebx, dword [esp + 0x10]
movzx edi, word [edi + ebx]
and edi, edx
mov dword [esp + 0x54], edi
mov edx, dword [esp + 0x14]
cmp edx, eax
jl 0x44d39f
mov edi, dword [esp + 0x88]
lea eax, [ebp + ecx*2]
movzx eax, word [eax + edi]
and eax, esi
mov dword [esp + 0x64], eax
cmp edx, dword [esp + 0x7c]
jge 0x44d3bd
mov edx, dword [esp + 0x3c]
lea eax, [edx + ecx*2]
mov edx, dword [esp + 0x88]
movzx eax, word [eax + edx]
and eax, esi
mov dword [esp + 0x60], eax
cmp dword [esp + 0x64], 0
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov edx, eax
mov edi, eax
mov esi, eax
mov ebx, eax
jne 0x44d3e3
mov esi, dword [esp + 0x34]
mov ebp, dword [esp + 0xa4]
lea esi, [esi + ecx*4]
mov esi, dword [esi + ebp]
cmp dword [esp + 0x58], 0
jne 0x44d3f0
mov edi, dword [esp + 0x40]
mov edi, dword [edi]
cmp dword [esp + 0x54], 0
jne 0x44d3fd
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp dword [esp + 0x60], 0
jne 0x44d415
mov edx, dword [esp + 0x44]
lea ecx, [edx + ecx*4]
mov edx, dword [esp + 0xa4]
mov edx, dword [ecx + edx]
mov ecx, eax
and ecx, 0xff00ff
mov ebp, edx
and ebp, 0xff00ff
add ecx, ebp
and eax, 0xff00
mov ebp, edi
and ebp, 0xff00ff
add ecx, ebp
and edx, 0xff00
add eax, edx
mov ebp, esi
and ebp, 0xff00ff
add ecx, ebp
and edi, 0xff00
add eax, edi
lea ecx, [ecx + ecx*2]
and esi, 0xff00
add eax, esi
lea edx, [eax + eax*2]
mov ebp, ebx
and ebp, 0xff00ff
lea ecx, [ecx + ebp*4 + 0x80008]
mov ebp, dword [esp + 0x2c]
and ebx, 0xff00
and ecx, 0xff00ff0
lea eax, [edx + ebx*4 + 0x800]
and eax, 0xff000
or ecx, eax
mov eax, dword [esp + 0x5c]
shr ecx, 4
mov edx, 2
add dword [esp + 0x38], edx
add dword [esp + 0x30], edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov edx, 4
add dword [esp + 0x20], edx
add dword [esp + 0x40], edx
add dword [esp + 0x28], edx
add ecx, 1
add eax, edx
cmp ecx, dword [esp + 0x70]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x5c], eax
jl 0x44d320
mov ecx, dword [esp + 0xc4]
mov eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x14]
add dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x8c]
mov edi, dword [esp + 0x4c]
add dword [esp + 0x1c], eax
add dword [esp + 0x24], eax
add dword [esp + 0x10], ecx
add dword [esp + 0x34], eax
add dword [esp + 0x3c], ecx
add dword [esp + 0x44], eax
add edx, 1
add edi, eax
add ebp, ecx
cmp edx, dword [esp + 0x74]
mov dword [esp + 0x14], edx
mov dword [esp + 0x4c], edi
mov dword [esp + 0x2c], ebp
jl 0x44d2e0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc8
ret