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

Disassembly:
push 0xffffffffffffffff
push 0x49b918
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x4c54e8]
xor eax, esp
mov dword [esp + 0x4c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4c54e8]
xor eax, esp
push eax
lea eax, [esp + 0x64]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, ecx
mov esi, dword [edi + 4]
xor eax, eax
cmp esi, eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x24], ebx
jne 0x446af0
mov dword [esp + 0x20], eax
jmp 0x446b0e
mov ecx, dword [edi + 8]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x20], eax
xor eax, eax
cmp dword [esp + 0x20], eax
mov dword [esp + 0x14], eax
jbe 0x446bc7
xor ebx, ebx
test esi, esi
je 0x446b40
mov ecx, dword [edi + 8]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [esp + 0x14], eax
jb 0x446b45
call fcn.00476807
mov esi, dword [edi + 4]
mov eax, ebp
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x446b4d
mov edi, dword [ebx + esi + 0x14]
sub eax, edx
mov ebp, eax
mov eax, edi
cmp eax, edi
jae 0x446b64
cmp edi, ebp
mov ecx, edi
jb 0x446b6c
mov ecx, ebp
cmp dword [ebx + esi + 0x18], 0x10
jb 0x446b79
mov eax, dword [ebx + esi + 4]
jmp 0x446b7d
lea eax, [ebx + esi + 4]
push ecx
mov ecx, dword [esp + 0x1c]
push ecx
push eax
call fcn.00405ef9
add esp, 0xc
test eax, eax
jne 0x446ba1
cmp edi, ebp
jb 0x446ba1
cmp edi, ebp
setne al
test eax, eax
je 0x446c8b
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
add eax, 1
add ebx, 0x38
cmp eax, dword [esp + 0x20]
mov dword [esp + 0x14], eax
jb 0x446b1e
mov ebx, dword [esp + 0x24]
xor eax, eax
mov esi, 0xf
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], eax
mov byte [esp + 0x2c], 0
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], eax
mov byte [esp + 0x48], 0
mov dword [esp + 0x6c], eax
mov eax, ebp
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x446bef
sub eax, edx
push eax
push ebp
lea ecx, [esp + 0x30]
call fcn.00404829
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x446c0a
sub eax, edx
push eax
push ebx
lea ecx, [esp + 0x4c]
call fcn.00404829
lea ecx, [esp + 0x28]
push ecx
mov ecx, edi
call fcn.00419489
mov edi, 0x10
cmp dword [esp + 0x5c], edi
jb 0x446c44
mov edx, dword [esp + 0x48]
push edx
call fcn.00475c61
add esp, 4
cmp dword [esp + 0x40], edi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], 0
mov byte [esp + 0x48], 0
jb 0x446c68
mov eax, dword [esp + 0x2c]
push eax
call fcn.00475c61
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x64]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x4c]
xor ecx, esp
call fcn.004761ea
add esp, 0x5c
ret 8
mov edi, dword [esp + 0x1c]
mov eax, dword [edi + 4]
test eax, eax
mov esi, dword [esp + 0x14]
je 0x446cb6
mov ecx, dword [edi + 8]
sub ecx, eax
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x446cbb
call fcn.00476807
mov ebx, dword [esp + 0x24]
mov eax, ebx
lea edx, [eax + 1]
jmp 0x446cc9
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x446cc9
sub eax, edx
push eax
mov eax, dword [edi + 4]
lea edx, [esi*8]
sub edx, esi
push ebx
lea ecx, [eax + edx*8 + 0x1c]
call fcn.00404829
mov eax, 1
jmp 0x446c6a