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

Disassembly:
push ecx
push esi
push edi
push ebp
sub esp, 0x80
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], ebx
test ebx, ebx
je 0x44b201
test eax, eax
je 0x44b201
mov ebx, dword [eax + 0x18]
test ebx, ebx
jne 0x44b20e
xor al, al
add esp, 0x80
pop ebp
pop edi
pop esi
pop ecx
ret
mov eax, ebx
call fcn.0044b030
mov ebp, eax
test eax, eax
je 0x44b201
mov eax, 0x191
call fcn.0044c4f0
mov dword [esp + 0x6c], eax
mov eax, 0x194
call fcn.0044c4f0
mov dword [esp + 0x64], eax
mov eax, 0x193
call fcn.0044c4f0
mov dword [esp + 0x60], eax
mov eax, 0x192
call fcn.0044c4f0
mov dword [esp + 0x68], eax
xor al, al
mov byte [esp + 0x7c], al
mov byte [esp + 0x50], al
cmp dword [esp + 0x70], 0
jle 0x44b448
mov eax, 0xffffffff
mov dword [esp + 0x54], eax
test dl, dl
je 0x44b452
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x1c]
mov edx, 0xffff81f5
xor ebx, ebx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x74]
call fcn.00445fa0
mov eax, 0x46e024
call fcn.0044a540
xor edx, edx
mov eax, dword [esp + 0x74]
mov byte [0x47126c], 1
call fcn.00445d50
mov byte [esp + 0x78], al
cmp dword [esp + 0x1c], 0
jl 0x44b4ca
mov edi, 0xffffffff
mov byte [esp + 0x20], 0
mov dword [esp + 0x34], edi
mov dword [esp + 0x44], edi
movzx ebx, byte [esp + 0x20]
mov ecx, esp
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
call fcn.00445da0
test al, al
jne 0x44b59c
cmp byte [esp + 0x20], 0
je 0x44b55c
cmp dword [esp + 0x70], 0
jl 0x44b642
cmp dword [esp + 0x34], 0xffffffff
je 0x44b6de
mov eax, dword [esp + 0x74]
mov byte [0x47126c], 0
call fcn.00445ba0
mov eax, dword [esp + 0x74]
call fcn.00447e20
mov eax, dword [esp + 0x74]
call fcn.00447510
mov eax, dword [esp + 0x74]
call fcn.004479e0
mov eax, dword [esp + 0x74]
cmp dword [eax + 0x74], 0xffff81f5
sete al
movzx eax, al
cmp eax, dword [esp + 0x1c]
jle 0x44b653
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 0x74]
test eax, eax
je 0x44b67b
mov eax, dword [esp + 0x74]
or byte [eax + 0x63], 4
mov eax, dword [eax + 0x40]
cdq
sub eax, edx
sar eax, 1
mov esi, dword [esp + 0x1c]
cmp eax, esi
jge 0x44b669
mov edx, esi
sub edx, eax
mov eax, dword [esp + 0x74]
call fcn.00446940
mov edi, dword [esp + 0x1c]
cmp edi, 0xffff81f5
jne 0x44b6cd
mov eax, edi
mov edx, dword [esp + 0x74]
mov dword [edx + 0x1c], eax
mov al, byte [esp + 0x30]
mov edi, edx
mov byte [edx + 0x20], al
mov eax, dword [esp + 0x34]
mov esi, edx
mov dword [edx + 0x24], eax
mov eax, dword [esp + 0x38]
lea edi, [edi + 0x28]
lea esi, [esi + 0x1c]
dec eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [edx + 0x30], eax
mov edi, edx
mov dword [edx + 0x3c], eax
mov esi, edx
lea edi, [edi + 0x34]
lea esi, [esi + 0x1c]
mov eax, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00447ea0
mov eax, edx
call fcn.00447d60
mov eax, edx
call fcn.00447e20
mov eax, ebp
call fcn.00422120
cmp byte [esp + 0x7c], 0
je 0x44b407
mov eax, dword [esp + 0x68]
call fcn.0044a540
mov bl, 1
movzx edx, byte [esp + 0x78]
mov eax, dword [esp + 0x74]
call fcn.00445d50
mov eax, dword [esp + 0x6c]
call fcn.00422120
mov eax, dword [esp + 0x64]
call fcn.00422120
mov eax, dword [esp + 0x60]
call fcn.00422120
mov eax, dword [esp + 0x68]
call fcn.00422120
mov al, bl
add esp, 0x80
pop ebp
pop edi
pop esi
pop ecx
ret
mov eax, 0x7fff
jmp 0x44b26d
mov eax, dword [esp + 0x74]
call fcn.004479d0
test al, al
je 0x44b49c
mov eax, dword [esp + 0x74]
mov esi, dword [eax + 0x34]
cmp esi, 0xffff81f5
jne 0x44b48f
mov eax, esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x74]
mov al, byte [eax + 0x38]
mov byte [esp + 0x50], al
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x54], eax
jmp 0x44b27f
mov edi, dword [eax + 0x54]
mov edx, eax
lea eax, [esi + edi]
sub eax, dword [edx + 0x74]
jmp 0x44b470
mov eax, dword [esp + 0x74]
mov edi, dword [eax + 0x74]
cmp edi, 0xffff81f5
jne 0x44b4b6
mov eax, edi
mov dword [esp + 0x1c], eax
jmp 0x44b27f
mov ecx, dword [eax + 0x54]
mov edx, eax
lea eax, [edi + ecx]
sub eax, dword [edx + 0x74]
mov dword [esp + 0x1c], eax
jmp 0x44b27f
cmp byte [esp + 0x7c], 0
jne 0x44b501
mov eax, dword [esp + 0x74]
test byte [eax + 0x61], 8
je 0x44b54a
call fcn.00445f90
mov edx, eax
cmp eax, 0xffffffff
je 0x44b517
mov byte [esp + 0x20], 0xff
mov byte [esp + 0x7c], 1
dec edx
xor ebx, ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], ebx
jmp 0x44b2b7
mov ebx, dword [esp + 0x6c]
mov eax, dword [esp + 0x74]
mov edx, ebp
call fcn.0044b1a0
xor bl, bl
jmp 0x44b409
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x74]
mov ecx, dword [esp + 0x74]
neg edx
or byte [eax + 0x63], 4
call fcn.00446940
mov edx, dword [esp + 0x74]
mov ecx, dword [ecx + 0x40]
mov eax, dword [esp + 0x74]
sub ecx, dword [edx + 0x74]
mov edx, 0x7e0b
call fcn.00446940
lea edx, [eax + ecx]
jmp 0x44b4e7
mov ebx, dword [esp + 0x64]
mov edx, ebp
call fcn.0044b1a0
xor bl, bl
jmp 0x44b409
cmp byte [esp + 0x7c], 0
jne 0x44b501
mov eax, dword [esp + 0x74]
test byte [eax + 0x61], 8
je 0x44b58a
mov byte [esp + 0x20], 0xff
xor edi, edi
mov byte [esp + 0x7c], 1
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], edi
inc byte [esp + 0x20]
jmp 0x44b2d4
mov ebx, dword [esp + 0x60]
mov edx, ebp
call fcn.0044b1a0
xor bl, bl
jmp 0x44b409
test byte [esp + 0x10], 0x80
jne 0x44b581
mov eax, dword [esp]
xor esi, esi
mov ecx, 0xffffffff
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], eax
lea ebx, [esp + 0x5c]
lea edx, [esp + 0x58]
mov eax, ebp
call fcn.0044b160
test al, al
je 0x44b581
mov eax, dword [esp + 0x5c]
mov esi, dword [esp]
sub eax, esi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
sub eax, esi
mov dword [esp + 0x24], eax
mov al, byte [esp + 0x20]
mov ah, byte [esp + 0x50]
cmp al, ah
jae 0x44b5fd
lea edi, [esp + 0x3c]
lea esi, [esp + 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
inc dword [esp + 0x58]
jmp 0x44b5b5
jbe 0x44b617
cmp ecx, dword [esp + 0x34]
jne 0x44b5f7
lea edi, [esp + 0x2c]
lea esi, [esp + 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
inc dword [esp + 0x58]
jmp 0x44b5b5
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x54]
cmp eax, edx
jle 0x44b63e
cmp ecx, dword [esp + 0x34]
jne 0x44b5f7
lea edi, [esp + 0x2c]
lea esi, [esp + 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
inc dword [esp + 0x58]
jmp 0x44b5b5
jge 0x44b5f7
jmp 0x44b5eb
lea edi, [esp + 0x2c]
lea esi, [esp + 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x44b306
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x74]
mov eax, dword [eax + 0x74]
add eax, dword [edx + 0x54]
sub eax, dword [edx + 0x74]
jmp 0x44b35e
mov edx, dword [esp + 0x74]
mov edx, dword [edx + 0x74]
mov eax, dword [esp + 0x74]
neg edx
jmp 0x44b38a
mov eax, dword [esp + 0x74]
cmp dword [eax + 0x40], 0xffff81f5
sete al
movzx eax, al
cmp eax, dword [esp + 0x1c]
jg 0x44b6ba
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 0x40]
test eax, eax
je 0x44b38f
mov eax, dword [esp + 0x74]
or byte [eax + 0x63], 4
mov eax, dword [eax + 0x40]
cdq
sub eax, edx
sar eax, 1
mov edx, dword [esp + 0x1c]
jmp 0x44b384
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x74]
mov eax, dword [eax + 0x40]
add eax, dword [edx + 0x54]
sub eax, dword [edx + 0x74]
jmp 0x44b699
mov edx, dword [esp + 0x74]
mov eax, edi
sub eax, dword [edx + 0x54]
add eax, dword [edx + 0x74]
jmp 0x44b3a1
cmp dword [esp + 0x70], 0
jle 0x44b727
cmp byte [esp + 0x7c], 0
je 0x44b6fa
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x4c]
jg 0x44b501
mov dword [esp + 0x54], 0xffffffff
mov ebx, 1
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov byte [esp + 0x50], 0
call fcn.00445fa0
mov dword [esp + 0x1c], eax
mov byte [esp + 0x20], 0
jmp 0x44b2b7
mov dword [esp + 0x54], 0x7fff
mov ebx, 0xffffffff
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov byte [esp + 0x50], 0xff
call fcn.00445fa0
mov dword [esp + 0x1c], eax
mov byte [esp + 0x20], 0
jmp 0x44b2b7