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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x9c
mov ebx, dword [eax]
mov dword [esp + 0x34], eax
movzx eax, byte [eax + 0x2c]
mov dword [esp + 0x7c], edx
mov word [esp + 0x74], dx
mov dword [esp + 0x68], ebx
mov byte [esp + 0x77], al
mov dword [esp + 0x60], eax
cmp eax, 1
jle 0x6f00fc
xor ebx, ebx
cmp eax, 2
setne bl
lea ebx, [ebx + ebx*4 + 5]
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x34]
cmp word [esp + 0x7c], 0
mov eax, dword [eax + 8]
je 0x6ef780
test eax, eax
je 0x6ef780
mov eax, dword [eax]
mov dword [esp + 0x40], eax
lea esi, [eax + eax]
jmp 0x6ef78a
mov dword [esp + 0x40], 0
xor esi, esi
mov eax, dword [esp + 0x60]
add eax, 8
imul eax, ebx
lea eax, [esi + eax*8]
cdq
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x68]
mov eax, dword [eax]
call fcn.006cec40
mov dword [esp + 0x6c], eax
test eax, eax
je 0x6f02b4
shl ebx, 5
add eax, ebx
mov edx, ebx
xor ebx, ebx
lea ecx, [eax + 4]
mov dword [esp + 0x58], eax
and ecx, 0xfffffffc
mov dword [eax], 0
mov dword [eax + 0x1c], 0
sub eax, ecx
mov edi, eax
xor eax, eax
add edi, 0x20
and edi, 0xfffffffc
mov dword [ecx + eax], ebx
add eax, 4
cmp eax, edi
jb 0x6ef7df
mov eax, dword [esp + 0x60]
add edx, dword [esp + 0x58]
mov ecx, edx
lea ebp, [eax*4]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], ebp
lea edi, [eax + eax]
shl eax, 6
mov ebx, eax
mov eax, dword [esp + 0x6c]
add ebx, eax
mov dword [eax + 0x18], ecx
add eax, 0x20
add ecx, ebp
cmp eax, ebx
jne 0x6ef810
imul edi, dword [esp + 0x70]
mov ebp, dword [esp + 0x40]
lea eax, [edx + edi]
mov dword [esp + 0x54], eax
test ebp, ebp
jne 0x6f00b1
mov esi, dword [esp + 0x68]
mov eax, 0x30
mov dword [esp + 0x54], 0
cmp word [esi + 0x9c], 0x30
cmovle ax, word [esi + 0x9c]
mov esi, dword [esp + 0x58]
mov word [esi + 0x10], ax
mov esi, dword [esp + 0x60]
test esi, esi
je 0x6f02a7
mov eax, dword [esp + 0x6c]
xor edx, edx
mov dword [esp + 0x3c], 0
mov word [esp + 0x4e], dx
mov dword [esp + 0x2c], eax
xor eax, eax
mov word [esp + 0x5c], ax
mov dword [esp + 0x48], 1
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0x48]
test eax, eax
je 0x6efc20
mov eax, dword [esp + 0x44]
mov dword [esp + 0x20], 0
mov dword [esp + 0x30], 0
shl eax, 2
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xc], eax
lea esi, [esi]
lea esi, [esi]
mov eax, dword [esp + 0x34]
mov ebx, dword [eax + 0x40]
test ebx, ebx
je 0x6efc00
mov eax, dword [esp + 0x24]
mov ebp, ebx
and eax, 2
mov dword [esp + 0x50], eax
jmp 0x6ef8fb
mov ebp, dword [ebp + 0x3c]
test ebp, ebp
je 0x6efc00
mov eax, dword [esp + 0xc]
mov esi, dword [eax]
mov ebx, dword [eax + 4]
mov edx, esi
not edx
mov eax, edx
mov edx, ebx
and eax, dword [ebp]
not edx
and edx, dword [ebp + 4]
or edx, eax
jne 0x6ef8f0
mov ecx, dword [ebp + 8]
mov edx, esi
mov edi, dword [ebp + 0xc]
and edx, ecx
mov eax, edx
mov edx, ebx
and edx, edi
or edx, eax
jne 0x6ef8f0
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x10]
mov word [esp + 0x10], ax
test byte [ebp + 0x2d], 0x40
je 0x6ef945
cmp ax, 2
jle 0x6ef8f0
movzx edx, word [esp + 0x10]
movsx eax, word [ebp + 0x12]
mov dword [esp + 0x18], ecx
or ebx, edi
add dx, word [ebp + 0x14]
movsx edx, dx
call fcn.006b80d0
mov ecx, dword [esp + 0xc]
cwde
movsx edx, word [ecx + 0x14]
call fcn.006b80d0
mov ecx, dword [esp + 0x18]
movzx edx, word [esp + 0x10]
mov word [esp + 0x16], ax
add dx, word [ebp + 0x16]
or esi, ecx
mov ecx, dword [esp + 0xc]
mov word [esp + 0x4c], dx
movzx eax, byte [ecx + 0x16]
mov byte [esp + 0x10], al
test al, al
js 0x6efb40
mov eax, dword [esp + 0xc]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x88], eax
movsx edi, byte [esp + 0x10]
cmp dword [esp + 0x40], edi
jle 0x6efb89
mov eax, dword [esp + 0x54]
lea eax, [eax + edi*2]
movsx edx, word [eax]
mov dword [esp + 0x28], eax
test dx, dx
je 0x6efcbc
movsx eax, word [esp + 0x16]
mov edi, eax
call fcn.006b80d0
mov word [esp + 0x28], di
mov edi, dword [esp + 0x20]
add eax, 3
mov word [esp + 0x16], ax
test edi, edi
je 0x6efba8
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x2c]
xor edx, edx
mov ebp, edi
jmp 0x6efa1e
add edx, 1
add eax, 0x20
cmp edx, ebp
je 0x6efbc0
mov ecx, dword [eax]
mov edi, dword [eax + 4]
xor ecx, esi
xor edi, ebx
or edi, ecx
jne 0x6efa10
movzx ecx, byte [esp + 0x10]
xor cl, byte [eax + 0x16]
js 0x6efa10
mov ebp, dword [esp + 0x18]
movzx esi, word [esp + 0x16]
cmp si, word [eax + 0x12]
jg 0x6ef8f0
je 0x6efc93
mov esi, dword [esp + 0xc]
mov ecx, dword [esi]
mov edx, dword [esi + 4]
or ecx, dword [ebp + 8]
or edx, dword [ebp + 0xc]
mov dword [eax + 4], edx
mov dword [eax], ecx
mov ebx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
mov dword [eax + 0xc], ebx
movzx ebx, word [esp + 0x4c]
mov dword [eax + 8], ecx
mov ecx, dword [eax + 0x18]
mov word [eax + 0x10], bx
movzx ebx, word [esp + 0x16]
mov word [eax + 0x12], bx
movzx ebx, word [esp + 0x28]
mov word [eax + 0x14], bx
movzx ebx, byte [esp + 0x10]
mov byte [eax + 0x16], bl
mov ebx, dword [esp + 0x24]
mov esi, dword [esi + 0x18]
cmp ebx, 4
jae 0x6efc50
test ebx, ebx
je 0x6efac4
movzx edx, byte [esi]
mov byte [ecx], dl
mov ebx, dword [esp + 0x50]
test ebx, ebx
jne 0x6eff67
mov ecx, dword [eax + 0x18]
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov dword [ecx + eax], ebp
cmp dword [esp + 0x38], esi
jg 0x6ef8f0
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x38]
movzx ebx, word [eax + 0x12]
movzx edi, word [eax + 0x10]
add eax, 0x20
mov word [esp + 0x4e], bx
mov word [esp + 0x5c], di
cmp esi, 1
je 0x6eff4c
xor ecx, ecx
mov dword [esp + 0x10], ebp
mov edx, 1
mov dword [esp + 0x3c], ecx
jmp 0x6efb28
movzx edi, word [eax + 0x14]
mov dword [esp + 0x3c], edx
mov ebx, ecx
add edx, 1
add eax, 0x20
cmp esi, edx
je 0x6efc80
movzx ecx, word [eax + 0x12]
cmp cx, bx
jg 0x6efb10
jne 0x6efb1a
movzx ebp, word [eax + 0x14]
cmp bp, di
jle 0x6efb1a
mov edi, ebp
jmp 0x6efb14
mov edi, dword [esp + 0x34]
lea eax, [esp + 0x88]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov edx, dword [edi + 8]
push eax
push ebp
push dword [esp + 0x4c]
movzx eax, word [edi + 0x28]
push eax
mov ecx, dword [esp + 0x1c]
mov eax, edi
call fcn.006eeb30
mov byte [esp + 0x20], al
add esp, 0x10
test al, al
jns 0x6ef9b3
movzx eax, word [esp + 0x16]
mov edi, dword [esp + 0x20]
sub eax, 2
mov word [esp + 0x28], ax
test edi, edi
jne 0x6ef9fe
lea esi, [esi]
mov esi, dword [esp + 0x20]
mov eax, esi
add esi, 1
mov dword [esp + 0x20], esi
jmp 0x6efbf4
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
cmp dword [esp + 0x38], esi
jg 0x6efba8
movzx ebx, word [esp + 0x4e]
cmp word [esp + 0x16], bx
jg 0x6ef8f0
jne 0x6efbf0
movzx esi, word [esp + 0x5c]
cmp word [esp + 0x28], si
jge 0x6ef8f0
mov eax, dword [esp + 0x3c]
shl eax, 5
add eax, dword [esp + 0x2c]
jmp 0x6efa4e
add dword [esp + 0x30], 1
mov eax, dword [esp + 0x30]
add dword [esp + 0xc], 0x20
cmp eax, dword [esp + 0x48]
jne 0x6ef8d0
mov eax, dword [esp + 0x20]
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0x2c]
add dword [esp + 0x44], 1
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x58], ebx
cmp dword [esp + 0x60], esi
je 0x6eff88
mov dword [esp + 0x2c], eax
jmp 0x6ef897
mov edx, dword [esi]
lea edi, [ecx + 4]
and edi, 0xfffffffc
mov dword [ecx], edx
mov ebx, dword [esp + 0x24]
mov edx, dword [esi + ebx - 4]
mov dword [ecx + ebx - 4], edx
sub ecx, edi
sub esi, ecx
add ecx, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
jmp 0x6efac1
mov word [esp + 0x4e], bx
mov ebp, dword [esp + 0x10]
mov word [esp + 0x5c], di
jmp 0x6ef8f0
movzx esi, word [esp + 0x4c]
cmp si, word [eax + 0x10]
jg 0x6ef8f0
jne 0x6efa4e
movzx esi, word [esp + 0x28]
cmp si, word [eax + 0x14]
jl 0x6efa4e
jmp 0x6ef8f0
mov eax, dword [esp + 0x34]
mov edx, 0x88888889
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax]
add ecx, 0x3b
mov eax, ecx
imul edx
mov eax, ecx
sar eax, 0x1f
add edx, ecx
sar edx, 4
mov ecx, edx
sub ecx, eax
mov eax, ecx
mov dword [esp + 0x18], ecx
cdq
mov eax, 7
cmp eax, ecx
mov dword [esp + 0x1c], edx
mov eax, 0
sbb eax, dword [esp + 0x1c]
jb 0x6efdde
mov eax, 1
cmp eax, ecx
mov eax, 0
sbb eax, dword [esp + 0x1c]
mov ecx, 0
jae 0x6efd78
mov dword [esp + 0x64], esi
mov eax, dword [esp + 0x18]
mov ecx, 0x1e
mov dword [esp + 0x78], ebx
mov edx, dword [esp + 0x1c]
nop
shld edx, eax, 1
mov esi, 7
add eax, eax
mov ebx, ecx
sub ecx, 0xa
cmp esi, eax
mov esi, 0
sbb esi, edx
jae 0x6efd30
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x64]
mov dword [esp + 0x1c], edx
mov word [esp + 0x5e], bx
mov ebx, dword [esp + 0x78]
mov edx, dword [esp + 0x18]
movzx eax, word [esp + 0x5e]
and edx, 7
movzx edx, word [edx + edx + 0xa3ab84]
lea ecx, [eax + edx - 0xa]
mov eax, dword [esp + 0x34]
add cx, word [esp + 0x74]
mov word [esp + 0x18], cx
movzx eax, word [eax + 0x28]
mov word [esp + 0x64], ax
and ax, 0x4000
mov word [esp + 0x5e], ax
test edi, edi
jne 0x6efe26
cmp word [esp + 0x5e], 0
jne 0x6eff0b
movzx eax, word [esp + 0x74]
test word [esp + 0x64], 0x100
je 0x6efdc3
cmp ax, 0xa
jle 0x6efdcd
sub eax, 0xa
cmp ax, 0xa
jg 0x6efec8
movsx edx, word [esp + 0x18]
mov eax, dword [esp + 0x28]
mov word [eax], dx
jmp 0x6ef9d9
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x6eff13
bsr eax, edx
xor eax, 0x1f
mov ecx, 0x3c
mov edx, dword [esp + 0x1c]
sub ecx, eax
lea eax, [ecx + ecx*4]
lea eax, [eax + eax + 0x28]
mov word [esp + 0x5e], ax
mov eax, dword [esp + 0x18]
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
je 0x6efe19
mov eax, edx
xor edx, edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
jmp 0x6efd60
mov ecx, dword [esp + 0x40]
mov eax, ecx
sub eax, edi
mov edi, 7
imul eax, eax, 0x64
cdq
idiv ecx
cdq
cmp edi, eax
mov edi, 0
sbb edi, edx
jb 0x6eff23
mov edi, 1
mov ecx, 0
cmp edi, eax
sbb ecx, edx
mov ecx, 0xffffffbe
jae 0x6efe95
mov dword [esp + 0x78], ebx
mov ecx, 0x1e
shld edx, eax, 1
mov ebx, 7
add eax, eax
mov edi, ecx
sub ecx, 0xa
cmp ebx, eax
mov ebx, 0
sbb ebx, edx
jae 0x6efe67
mov ebx, dword [esp + 0x78]
and eax, 7
movzx eax, word [eax + eax + 0xa3ab84]
lea ecx, [edi + eax - 0x4c]
add word [esp + 0x18], cx
cmp word [esp + 0x5e], 0
je 0x6efdac
add word [esp + 0x18], 0x10
mov ecx, dword [esp + 0x34]
movzx eax, word [esp + 0x74]
cmp word [ecx + 0x2a], ax
cmovle ax, word [ecx + 0x2a]
cmp ax, 0xa
jle 0x6efdcd
cwde
cdq
test edx, edx
je 0x6eff59
bsr edi, edx
xor edi, 0x1f
mov ecx, 0x3c
sub ecx, edi
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
cmovne eax, edx
lea edx, [ecx + ecx*4]
movzx ecx, word [esp + 0x18]
and eax, 7
lea edx, [ecx + edx*2 - 3]
add dx, word [eax + eax + 0xa3ab84]
mov word [esp + 0x18], dx
jmp 0x6efdcd
add word [esp + 0x18], 0xa
jmp 0x6efeac
bsr ecx, dword [esp + 0x18]
xor ecx, 0x1f
lea eax, [ecx + 0x20]
jmp 0x6efdf0
test edx, edx
je 0x6eff7d
bsr edi, edx
xor edi, 0x1f
mov ecx, 0x3c
sub ecx, edi
lea edi, [ecx + ecx*4]
shrd eax, edx, cl
shr edx, cl
lea edi, [edi + edi + 0x28]
test cl, 0x20
je 0x6eff47
mov eax, edx
jmp 0x6efe86
mov dword [esp + 0x3c], 0
jmp 0x6ef8f0
bsr ecx, eax
xor ecx, 0x1f
lea edi, [ecx + 0x20]
jmp 0x6efed8
mov ebx, dword [esp + 0x24]
movzx edx, word [esi + ebx - 2]
mov word [ecx + ebx - 2], dx
mov ecx, dword [eax + 0x18]
jmp 0x6efac4
bsr ecx, eax
xor ecx, 0x1f
lea edi, [ecx + 0x20]
jmp 0x6eff2d
mov eax, dword [esp + 0x48]
test eax, eax
je 0x6f0280
cmp dword [esp + 0x48], 1
je 0x6effc3
mov edx, dword [esp + 0x48]
mov esi, dword [esp + 0x2c]
shl edx, 5
lea eax, [esi + 0x20]
mov ecx, esi
add edx, esi
movzx ebx, word [eax + 0x12]
cmp word [ecx + 0x12], bx
cmovg ecx, eax
add eax, 0x20
cmp edx, eax
jne 0x6effad
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x60]
xor ecx, ecx
mov esi, dword [eax + 0x18]
mov eax, dword [esp + 0x34]
mov ebx, dword [eax + 4]
lea edx, [eax + 0x2fc]
mov eax, dword [esi + ecx*4]
add ecx, 1
add edx, 0x60
mov dword [edx - 0x14], eax
movzx eax, byte [eax + 0x10]
mov byte [edx - 0x28], al
lea eax, [eax + eax*8]
mov eax, dword [ebx + eax*8 + 0x34]
mov dword [edx - 0x60], eax
cmp edi, ecx
jg 0x6effdd
mov eax, dword [esp + 0x34]
movzx eax, word [eax + 0x28]
mov word [esp + 0xc], ax
and ax, 0x180
cmp ax, 0x100
je 0x6f0160
mov ebx, dword [esp + 0x34]
movzx eax, byte [ebx + 0x30]
mov edx, dword [ebx + 8]
mov ecx, eax
mov byte [esp + 0xc], al
and ecx, 0xfffffffb
mov byte [ebx + 0x30], cl
test edx, edx
je 0x6f0088
mov eax, dword [esp + 0x2c]
movsx eax, byte [eax + 0x16]
mov byte [ebx + 0x2d], al
movzx ebx, word [ebx + 0x28]
test bl, 0x80
je 0x6f010e
cmp eax, dword [edx]
je 0x6f02bf
mov esi, dword [esp + 0x34]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx + 0x30]
test ecx, ecx
je 0x6f006b
mov ecx, dword [ecx]
cmp eax, ecx
jle 0x6f006b
mov byte [esi + 0x2d], cl
and bh, 2
je 0x6f0088
mov eax, dword [esp + 0x34]
movsx eax, byte [eax + 0x2d]
cmp eax, dword [edx]
jne 0x6f0088
mov ebp, dword [esp + 0x60]
test ebp, ebp
jne 0x6f02cc
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x34]
mov edx, dword [esp + 0x6c]
movzx eax, word [eax + 0x10]
mov word [ebx + 0x34], ax
mov eax, dword [esp + 0x68]
mov eax, dword [eax]
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.006bf870
sub esp, 4
push esi
push 0
push dword [esp + 0x60]
call fcn.00798618
mov ebx, dword [esp + 0x78]
add esp, 0x10
mov esi, dword [esp + 0x58]
mov eax, 0x30
mov edi, dword [esp + 0x60]
cmp word [ebx + 0x9c], 0x30
cmovle ax, word [ebx + 0x9c]
test edi, edi
mov word [esi + 0x10], ax
mov eax, 0xffffffff
cmove eax, dword [esp + 0x40]
mov byte [esi + 0x16], al
jmp 0x6ef85d
mov dword [esp + 0x38], 1
mov ebx, 1
jmp 0x6ef762
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x34]
mov esi, dword [edi + 8]
mov edi, dword [edi + 0xc]
mov dword [ebp + 0x48], esi
mov dword [ebp + 0x4c], edi
test al, al
jle 0x6f01cc
cmp al, 1
jne 0x6f006b
mov eax, dword [esp + 0x60]
test eax, eax
je 0x6f006b
test bl, 3
je 0x6f006b
mov eax, dword [esp + 0x34]
or ecx, 4
mov byte [eax + 0x30], cl
jmp 0x6f006b
mov eax, dword [esp + 0x34]
cmp byte [eax + 0x2f], 0
jne 0x6f0019
cmp word [esp + 0x7c], 0
je 0x6f0019
mov edx, dword [eax + 0xc]
mov esi, eax
lea eax, [esp + 0x88]
push eax
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x74]
mov eax, dword [ecx + 0x18]
push dword [eax + ebx - 4]
movzx eax, byte [esp + 0x7f]
sub eax, 1
movzx eax, ax
push eax
mov eax, esi
push pe_nt_image_headers32
call fcn.006eeb30
mov edx, dword [esi + 0xc]
add esp, 0x10
movsx eax, al
cmp eax, dword [edx]
jne 0x6f0019
mov eax, dword [esp + 0x34]
mov byte [eax + 0x2f], 2
jmp 0x6f0019
mov eax, dword [esp + 0x60]
mov byte [ebp + 0x2d], 0
test eax, eax
je 0x6f0088
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x70]
mov eax, dword [edi + 0x18]
mov ecx, dword [eax + ecx - 4]
mov eax, dword [ecx + 0x2c]
test ah, 0x10
jne 0x6f006b
and eax, 0x104
cmp eax, 0x104
je 0x6f006b
lea eax, [esp + 0x88]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
push eax
push ecx
movzx eax, byte [esp + 0x7f]
mov ecx, edi
sub eax, 1
movzx eax, ax
push eax
mov eax, ebp
push 0x800
call fcn.006eeb30
mov edx, dword [ebp + 8]
add esp, 0x10
movsx eax, al
cmp eax, dword [edx]
jne 0x6f0269
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x88]
mov ebx, dword [esp + 0x8c]
or byte [eax + 0x30], 4
mov dword [eax + 0x48], ecx
mov dword [eax + 0x4c], ebx
mov eax, dword [esp + 0x34]
movzx ebx, word [eax + 0x28]
jmp 0x6f006b
sub esp, 8
push 0xa31c84
mov esi, dword [esp + 0x74]
push esi
call fcn.006cea90
mov eax, dword [esi]
mov edx, dword [esp + 0x7c]
add esp, 0xac
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.006bf870
mov eax, dword [esp + 0x58]
mov dword [esp + 0x2c], eax
jmp 0x6efffe
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, dword [esp + 0x34]
mov byte [esi + 0x2f], 2
jmp 0x6f0054
lea eax, [esp + 0x88]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
push eax
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x74]
mov eax, dword [ecx + 0x18]
push dword [eax + esi - 4]
movzx eax, byte [esp + 0x7f]
sub eax, 1
movzx eax, ax
push eax
push 0
mov ebx, dword [esp + 0x44]
mov eax, ebx
call fcn.006eeb30
mov edx, dword [ebx + 8]
add esp, 0x10
movsx eax, al
cmp eax, dword [edx]
jne 0x6f0088
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x8c]
or byte [ebx + 0x30], 8
mov dword [ebx + 0x48], eax
mov dword [ebx + 0x4c], edx
jmp 0x6f0088