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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
mov esi, eax
push ebx
sub esp, 0x7c
mov eax, dword [eax + 4]
mov dword [ebp - 0x68], edx
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov ebx, dword [esi + 0x10]
mov dword [ebp - 0x60], eax
mov edi, dword [esi]
mov dword [ebp - 0x5c], edx
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], ebx
movsx eax, word [edx]
mov edx, dword [esi + 0x24]
mov dword [esi + 0x1c], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x30], 0
cmp eax, edx
mov dword [esi + 0x3c], 0
mov dword [esi + 0x4c], 0
mov dword [esi + 0x58], 0
ja 0x6dbcdc
mov ecx, dword [ebp - 0x68]
movsx edx, word [ecx + 2]
mov ecx, dword [esi + 0x18]
lea eax, [edx + 2]
cmp eax, ecx
ja 0x6dbba1
mov dword [esi + 0x1c], edx
mov edx, dword [ebp - 0x68]
mov dword [esi + 0x48], 2
mov dword [esi + 0x64], 0xffffffff
movsx eax, word [edx]
mov dword [esi + 0x28], eax
mov dword [esp], edx
call fcn.00699440
sub eax, 1
je 0x6dbd1e
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x60]
mov ebx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x54]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 0x20]
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], edx
test eax, eax
mov dword [esi + 0x74], 0
mov dword [esi + 0x78], 0
mov dword [ebp - 0x64], ecx
je 0x6dbb96
mov ebx, dword [ebp - 0x68]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [ebp - 0x50], eax
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 4]
mov ebx, dword [ebp - 0x50]
cmp dword [ebp - 0x64], ebx
mov dword [ebp - 0x4c], eax
movzx eax, word [ecx]
mov dword [ebp - 0x3c], ecx
jae 0x6dba5c
mov ecx, dword [ebp - 0x64]
cwde
lea eax, [eax + eax*4]
lea edi, [edx + 8]
mov dword [ebp - 0x40], 0
lea eax, [ecx + eax*8]
mov ebx, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
jmp 0x6db9dd
mov word [ebx], 1
mov ecx, dword [ebp - 0x44]
cmp ebx, dword [ebp - 0x48]
mov dword [ebp - 0x44], ebx
mov dword [ebx + 0x24], ecx
mov dword [ecx + 0x20], ebx
je 0x6dbc90
add ebx, 0x28
add edi, 8
cmp dword [ebp - 0x50], ebx
jbe 0x6dba5c
add dword [ebp - 0x4c], 1
mov edx, dword [edi - 4]
mov eax, dword [edi - 8]
mov word [ebx + 0xe], dx
mov edx, dword [ebp - 0x60]
mov word [ebx + 0xc], ax
imul edx
mov ecx, edx
sar ecx, 0x1f
add ecx, 0x8000
add eax, ecx
adc edx, 0
shr eax, 0x10
shl edx, 0x10
add eax, edx
add eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x5c]
mov dword [ebx + 0x10], eax
mov dword [ebx + 4], eax
mov eax, dword [edi - 4]
imul edx
mov ecx, edx
sar ecx, 0x1f
add ecx, 0x8000
add eax, ecx
adc edx, 0
shr eax, 0x10
shl edx, 0x10
add eax, edx
mov edx, dword [ebp - 0x4c]
add eax, dword [ebp - 0x54]
mov dword [ebx + 0x14], eax
mov dword [ebx + 8], eax
movsx eax, byte [edx]
and eax, 3
je 0x6db9b0
cmp eax, 2
je 0x6dbc00
mov word [ebx], 0
jmp 0x6db9b5
mov edx, dword [esi + 0x2c]
mov eax, dword [esi + 0x28]
lea ecx, [edx + eax*4]
cmp edx, ecx
jae 0x6dba92
xor eax, eax
nop
lea esi, [esi]
mov ebx, dword [ebp - 0x64]
cwde
lea eax, [eax + eax*4]
lea eax, [ebx + eax*8]
mov ebx, dword [ebp - 0x3c]
mov dword [edx], eax
add edx, 4
movzx eax, word [ebx]
add ebx, 2
mov dword [ebp - 0x3c], ebx
add eax, 1
cmp ecx, edx
ja 0x6dba70
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x64], eax
jae 0x6dbb96
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x38], esi
jmp 0x6dbb47
neg edx
mov ecx, edi
cmp edi, edx
mov dword [ebp - 0x20], 0xffffffff
jl 0x6dbae0
mov ecx, dword [ebp - 0x24]
mov edx, edi
mov dword [ebp - 0x20], 2
nop
lea esi, [esi]
mov eax, edx
sar eax, 0x1f
mov ebx, eax
xor ebx, edx
sub ebx, eax
imul eax, ecx, 0xe
mov ecx, eax
sar ecx, 0x1f
mov edx, ecx
xor edx, eax
mov eax, 4
sub edx, ecx
cmp ebx, edx
cmovg eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, 4
cmovg eax, dword [ebp - 0x20]
test byte [esi], 3
mov byte [esi + 3], al
jne 0x6dbbf0
movzx edx, byte [esi + 2]
cmp dl, al
je 0x6dbbe6
movsx edx, dl
movsx eax, al
add edx, eax
je 0x6dbbf0
mov edx, dword [ebp - 0x24]
add esi, 0x28
cmp dword [ebp - 0x50], esi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x30], edx
jbe 0x6dbb96
cmp esi, dword [ebp - 0x38]
je 0x6dbc21
movzx edx, byte [ebp - 0x20]
movsx edi, word [esi + 0xc]
movsx ebx, word [esi + 0xe]
mov eax, dword [esi + 0x20]
mov byte [esi + 2], dl
movsx edx, word [eax + 0xc]
sub edx, edi
movsx edi, word [eax + 0xe]
mov dword [ebp - 0x24], edx
sub edi, ebx
cmp edx, edi
jle 0x6dbac0
mov eax, edx
neg eax
cmp edi, eax
jl 0x6dbc10
mov edx, dword [ebp - 0x24]
mov ecx, edi
mov dword [ebp - 0x20], 1
jmp 0x6dbae0
mov eax, dword [ebp - 0x10]
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ebp - 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x20]
lea ebx, [edx + 0xb]
and ebx, 0xfffffff8
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x28
mov dword [esp], edi
call fcn.00694b50
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x6dbb96
mov dword [esi + 0x18], ebx
mov ebx, dword [ebp - 0x68]
movsx edx, word [ebx + 2]
jmp 0x6db8ff
cmp al, 4
je 0x6dbd43
nop
or word [esi], 0x100
jmp 0x6dbb36
mov word [ebx], 2
jmp 0x6db9b5
mov ecx, dword [ebp - 0x24]
mov edx, edi
mov dword [ebp - 0x20], 0xfffffffe
jmp 0x6dbae0
mov edx, dword [esi + 0x24]
movsx edi, word [esi + 0xc]
movsx ebx, word [esi + 0xe]
movsx eax, word [edx + 0xc]
mov ecx, edi
mov dword [ebp - 0x34], edx
sub ecx, eax
movsx eax, word [edx + 0xe]
mov edx, ebx
mov dword [ebp - 0x30], ecx
sub edx, eax
cmp ecx, edx
mov dword [ebp - 0x2c], edx
jg 0x6dbcc4
neg ecx
cmp edx, ecx
mov dword [ebp - 0x28], 0xffffffff
jl 0x6dbc62
mov ecx, edx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x28], 2
mov eax, ecx
sar eax, 0x1f
xor ecx, eax
sub ecx, eax
imul eax, edx, 0xe
mov edx, eax
sar edx, 0x1f
xor eax, edx
sub eax, edx
mov edx, 4
cmp ecx, eax
mov ecx, dword [ebp - 0x34]
cmovg edx, dword [ebp - 0x28]
add ecx, 0x28
mov dword [ebp - 0x38], ecx
jmp 0x6dbb5c
mov edx, dword [ebp - 0x68]
add dword [ebp - 0x40], 1
mov dword [ebp - 0x48], ebx
movsx eax, word [edx]
cmp dword [ebp - 0x40], eax
jge 0x6db9ca
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
movsx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0x64]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
jmp 0x6db9ca
mov eax, ecx
neg eax
cmp dword [ebp - 0x2c], eax
jl 0x6dbd31
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x28], 1
jmp 0x6dbc62
lea ebx, [eax + 3]
lea eax, [ebp - 0x10]
and ebx, 0xfffffffc
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x2c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 4], 4
mov dword [esp + 0x10], eax
mov dword [esp], edi
call fcn.00694b50
mov edx, dword [ebp - 0x10]
test edx, edx
mov dword [esi + 0x2c], eax
jne 0x6dbb96
mov dword [esi + 0x24], ebx
jmp 0x6db8ea
mov dword [esi + 0x48], 0xfffffffe
mov dword [esi + 0x64], 1
jmp 0x6db92a
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x28], 0xfffffffe
jmp 0x6dbc62
mov ecx, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov dword [esp + 0xc], edi
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0068e430
test eax, eax
jne 0x6dbbf0
jmp 0x6dbb36