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

Disassembly:
sub esp, 0x84
push esi
mov esi, dword [esp + 0x8c]
push 0xffffffffffffffff
push esi
call fcn.005dd5a0
add esp, 8
cmp dword [esi + 0x58], 2
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
jge 0x5dda24
mov eax, 0xffffff7d
pop esi
add esp, 0x84
ret
cmp dword [esi + 4], 0
jne 0x5dda37
mov eax, 0xffffff76
pop esi
add esp, 0x84
ret
push ebx
mov ebx, dword [esp + 0x98]
test ebx, ebx
jl 0x5ddfeb
mov ecx, dword [esp + 0x94]
jg 0x5dda58
test ecx, ecx
jb 0x5ddfeb
cmp ebx, edx
jg 0x5ddfeb
jl 0x5dda6a
cmp ecx, eax
ja 0x5ddfeb
push ebp
push edi
mov edi, dword [esi + 0x34]
sub edi, 1
mov dword [esp + 0x30], edi
js 0x5ddab2
mov ebp, dword [esi + 0x44]
mov ecx, edi
shl ecx, 4
lea ecx, [ecx + ebp + 8]
mov ebp, dword [ecx]
sub eax, ebp
mov ebp, dword [ecx + 4]
sbb edx, ebp
cmp ebx, edx
jg 0x5ddaa6
jl 0x5dda9c
cmp dword [esp + 0x9c], eax
jae 0x5ddaa6
sub edi, 1
sub ecx, 0x10
test edi, edi
jge 0x5dda84
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
mov edx, dword [esi + 0x38]
mov eax, dword [edx + edi*8 + 8]
mov ebp, dword [edx + edi*8 + 4]
lea ecx, [edx + edi*8]
mov edx, dword [ecx + 0xc]
shl edi, 4
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x44]
mov ebx, dword [edi + eax]
mov dword [esp + 0x1c], edx
mov edx, dword [ecx]
lea ecx, [edi + eax]
mov eax, dword [ecx + 4]
mov edi, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
add edi, ebx
adc ecx, eax
mov dword [esp + 0x60], ecx
mov ecx, ebx
sub ecx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
sbb eax, dword [esp + 0x2c]
add ecx, dword [esp + 0x9c]
mov dword [esp + 0x20], edx
adc eax, dword [esp + 0xa0]
cmp ebp, dword [esp + 0x1c]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ebp
jg 0x5ddd91
jl 0x5ddb40
cmp edx, dword [esp + 0x18]
jae 0x5ddd91
jmp 0x5ddb40
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sbb eax, ebp
test eax, eax
jg 0x5ddb64
jl 0x5ddb5c
cmp ecx, 0x2134
jae 0x5ddb64
mov ebx, dword [esp + 0x20]
mov edi, ebp
jmp 0x5ddbc1
mov edx, dword [esp + 0x34]
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
sub edx, edi
sbb ebx, dword [esp + 0x40]
push eax
push ecx
push ebx
push edx
call fcn.005b1470
mov ecx, dword [esp + 0x5c]
sub ecx, edi
mov edi, dword [esp + 0x60]
sbb edi, dword [esp + 0x40]
push edi
push ecx
push edx
push eax
call fcn.005b0c10
mov ebx, eax
add ebx, dword [esp + 0x20]
mov edi, edx
adc edi, ebp
sub ebx, 0x2134
sbb edi, 0
cmp edi, ebp
jg 0x5ddbc1
jl 0x5ddbb5
cmp ebx, dword [esp + 0x20]
ja 0x5ddbc1
mov ebx, dword [esp + 0x20]
add ebx, 1
mov edi, ebp
adc edi, 0
push edi
push ebx
mov eax, esi
call fcn.005dc8d0
add esp, 8
lea ecx, [ecx]
mov edx, dword [esp + 0x18]
sub edx, dword [esi + 8]
mov eax, dword [esp + 0x1c]
sbb eax, dword [esi + 0xc]
lea ecx, [esp + 0x64]
push eax
push edx
push ecx
call fcn.005dc910
add esp, 0xc
cmp eax, 0xffffff80
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
jne 0x5ddc03
cmp edx, 0xffffffff
je 0x5ddfce
cmp dword [esp + 0x14], 0
jg 0x5ddc61
jl 0x5ddc13
cmp dword [esp + 0x10], 0
jae 0x5ddc61
mov ecx, dword [esp + 0x20]
add ecx, 1
mov eax, ebp
adc eax, 0
cmp edi, eax
jl 0x5ddd91
jg 0x5ddc31
cmp ebx, ecx
jbe 0x5ddd91
mov edx, ebx
or edx, edi
je 0x5ddfce
add ebx, 0xffffdecc
adc edi, 0xffffffff
cmp edi, ebp
jg 0x5ddd38
jl 0x5ddc58
cmp ebx, dword [esp + 0x20]
ja 0x5ddd38
mov ebx, ecx
mov edi, eax
jmp 0x5ddd38
lea eax, [esp + 0x64]
push eax
call fcn.0063aca0
mov ecx, eax
and ecx, edx
add esp, 4
cmp ecx, 0xffffffff
je 0x5ddd44
cmp edx, dword [esp + 0x38]
jg 0x5ddcd1
jl 0x5ddc89
cmp eax, dword [esp + 0x34]
jae 0x5ddcd1
mov ecx, dword [esp + 0x10]
mov ebx, dword [esi + 8]
mov ebp, dword [esi + 0xc]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x34]
sub ecx, eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x38]
sbb eax, edx
test eax, eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x40], edx
jg 0x5ddd77
jl 0x5ddccd
cmp ecx, 0xac44
ja 0x5ddd77
mov edi, ebp
jmp 0x5ddd44
mov ecx, dword [esp + 0x20]
add ecx, 1
mov dword [esp + 0x4c], ecx
mov ecx, ebp
adc ecx, 0
cmp edi, ecx
mov dword [esp + 0x50], ecx
jl 0x5ddd91
jg 0x5ddcf9
cmp ebx, dword [esp + 0x4c]
jbe 0x5ddd91
mov ecx, dword [esp + 0x18]
cmp ecx, dword [esi + 8]
jne 0x5ddd5f
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esi + 0xc]
jne 0x5ddd5f
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
add ebx, 0xffffdecc
adc edi, 0xffffffff
cmp edi, ebp
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
jg 0x5ddd38
jl 0x5ddd30
cmp ebx, dword [esp + 0x20]
ja 0x5ddd38
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 0x50]
push edi
push ebx
mov eax, esi
call fcn.005dc8d0
add esp, 8
cmp ebp, dword [esp + 0x1c]
jg 0x5ddd91
jl 0x5ddbd0
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x20], ecx
jae 0x5ddd91
jmp 0x5ddbd0
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
cmp ebp, dword [esp + 0x1c]
jl 0x5ddb40
jg 0x5ddd91
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x20], edx
jb 0x5ddb40
mov ebp, dword [esp + 0x48]
mov ebx, dword [esp + 0x44]
push ebp
push ebx
mov eax, esi
call fcn.005dc8d0
or eax, 0xffffffff
push eax
push eax
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], eax
lea eax, [esp + 0x5c]
push eax
call fcn.005dc910
add esp, 0x14
test edx, edx
jg 0x5dddd4
jl 0x5dddc4
test eax, eax
jae 0x5dddd4
pop edi
pop ebp
pop ebx
mov eax, 0xfffffffe
pop esi
add esp, 0x84
ret
mov edi, dword [esp + 0x30]
cmp edi, dword [esi + 0x60]
je 0x5dddfb
call fcn.005dd1a0
lea ecx, [esp + 0x4c]
push ecx
mov dword [esi + 0x60], edi
call fcn.0063ad30
mov dword [esi + 0x5c], eax
mov dword [esi + 0x58], 3
jmp 0x5dde07
lea edx, [esi + 0x1e0]
push edx
call fcn.0063c9f0
mov eax, dword [esi + 0x5c]
add esp, 4
push eax
lea edi, [esi + 0x78]
push edi
call fcn.0063b5c0
lea ecx, [esp + 0x54]
push ecx
push edi
call fcn.0063b2c0
lea edx, [esp + 0x84]
push edx
push edi
call fcn.0063b710
cdq
mov ecx, eax
add esp, 0x18
or ecx, edx
je 0x5dde8a
lea ebx, [ebx]
test edx, edx
jl 0x5ddf30
jg 0x5dde52
test eax, eax
jb 0x5ddf30
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x88]
mov eax, ecx
and eax, edx
cmp eax, 0xffffffff
jne 0x5ddf3d
push 0
push edi
call fcn.0063b6f0
lea ecx, [esp + 0x7c]
push ecx
push edi
call fcn.0063b710
cdq
mov ecx, eax
add esp, 0x10
or ecx, edx
jne 0x5dde40
push ebp
push ebx
mov eax, esi
call fcn.005dc8d0
lea edx, [esp + 0x54]
push edx
mov eax, esi
call fcn.005dc9c0
mov edi, edx
add esp, 0xc
test edi, edi
mov ebx, eax
mov dword [esp + 0x10], ebx
jl 0x5ddfce
jg 0x5ddec0
test ebx, ebx
jb 0x5ddfce
lea esp, [esp]
lea eax, [esp + 0x4c]
push eax
call fcn.0063aca0
add esp, 4
cmp edx, 0xffffffff
jg 0x5ddf16
jl 0x5dded9
cmp eax, 0xffffffff
ja 0x5ddf16
lea ecx, [esp + 0x4c]
push ecx
call fcn.0063ac70
add esp, 4
test eax, eax
je 0x5ddf16
lea edx, [esp + 0x4c]
push edx
mov eax, esi
mov dword [esi + 8], ebx
mov dword [esi + 0xc], edi
call fcn.005dc9c0
mov edi, edx
add esp, 4
test edi, edi
mov ebx, eax
jg 0x5ddec0
jl 0x5ddf0d
test ebx, ebx
jae 0x5ddec0
mov dword [esp + 0x10], ebx
jmp 0x5ddfce
push edi
push ebx
push esi
mov dword [esp + 0x1c], ebx
call fcn.005dd690
add esp, 0xc
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x84
ret
mov dword [esp + 0x10], 0xffffff78
jmp 0x5ddfc6
mov eax, dword [esi + 0x60]
mov edi, dword [esi + 0x44]
shl eax, 4
sub ecx, dword [eax + edi]
sbb edx, dword [eax + edi + 4]
xor eax, eax
cmp edx, eax
mov dword [esi + 0x50], ecx
mov dword [esi + 0x54], edx
jg 0x5ddf65
jl 0x5ddf5f
cmp ecx, eax
jae 0x5ddf65
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], eax
mov eax, dword [esp + 0x28]
add dword [esi + 0x50], eax
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0xa0]
adc dword [esi + 0x54], ecx
mov edx, dword [esi + 0x54]
cmp edx, edi
jg 0x5ddfbe
jl 0x5ddf8f
mov eax, dword [esi + 0x50]
cmp eax, dword [esp + 0x9c]
ja 0x5ddfbe
push 0xffffffffffffffff
push esi
call fcn.005dd5a0
add esp, 8
cmp edi, edx
jg 0x5ddfbe
jl 0x5ddfa9
cmp dword [esp + 0x9c], eax
ja 0x5ddfbe
fldz
pop edi
pop ebp
fst qword [esi + 0x68]
pop ebx
fstp qword [esi + 0x70]
xor eax, eax
pop esi
add esp, 0x84
ret
mov dword [esp + 0x10], 0xffffff7f
mov dword [esp + 0x14], 0xffffffff
or eax, 0xffffffff
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], eax
call fcn.005dd1a0
mov eax, dword [esp + 0x10]
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x84
ret
pop ebx
mov eax, 0xffffff7d
pop esi
add esp, 0x84
ret