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

Disassembly:
mov ecx, dword [0x6cb24420]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x6c91f36d
sub esp, 0xf0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x6c9b5317]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.6c84f9c0
movzx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test al, al
je 0x6c91e027
mov dword [esp + 0x2c], edx
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x94], ebx
test eax, eax
jne 0x6c91dd1e
xor ebp, ebp
jmp 0x6c91dd52
mov dword [esp], ebx
mov dword [esp + 4], eax
lea ecx, [0x6c9cb760]
mov dword [esp + 8], ecx
call fcn.6c84ee20
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6c91e00a
test edx, edx
jne 0x6c91dd64
xor ebp, ebp
jmp 0x6c91dd98
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x6c9cb760]
mov dword [esp + 8], eax
call fcn.6c84ee20
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6c91e00a
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.6c84e870
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x6c91ddd2
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91dde0
jmp 0x6c91f354
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91de44
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x68], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0xbc], esi
mov dword [esp + 0x64], ebp
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
nop
test eax, eax
je 0x6c91dea6
lea ecx, [esp + 0x98]
cmp eax, ecx
je 0x6c91deb4
jmp 0x6c91f33c
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
inc ecx
mov edx, dword [esp + 0x9c]
cmp eax, ecx
jae 0x6c91df0a
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], ecx
mov byte [ecx + edx - 1], 0x2f
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.6c84e870
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x6c91df4e
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91df5c
jmp 0x6c91f324
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91dfc0
mov dword [esp + 0x34], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x68], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0xbc], esi
mov dword [esp + 0x68], ebp
mov dword [esp + 0x64], eax
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x6c91e154
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x6c91e1cf
mov ecx, dword [esp + 0xf4]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x6c9cb760]
mov dword [esp + 8], edx
call fcn.6c84ee20
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x6c91e1cf
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
call fcn.6c84e870
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x6c91e09d
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91e0ab
jmp 0x6c91f30c
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [edx + ebx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91e10f
mov dword [esp + 0x68], ebx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x3c], edx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x6c91e163
mov ecx, dword [eax]
jmp 0x6c91e165
xor ecx, ecx
mov dword [esp + 0x50], ecx
lea eax, [0x6c98c540]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.6c8104b0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb8], eax
lea edi, [esp + 0xc0]
xor eax, eax
call fcn.6c82c2c4
lea eax, [0x6c98e880]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
lea edx, [esp + 0xc0]
mov dword [esp + 8], edx
call fcn.6c7cf550
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xb8]
xor edx, edx
jmp 0x6c91e20c
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov dword [esi], ebp
lea eax, [esp + 0xc0]
mov dword [esp], eax
call fcn.6c7cf740
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0xc0]
test ebx, ebx
je 0x6c91e2a1
inc edx
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
cmp eax, edx
jae 0x6c91e269
mov dword [esp + 0x58], ebx
mov dword [esp + 0xb0], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6c98c540]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0xb0]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], eax
lea esi, [ecx + edx*8 - 4]
mov dword [esi], ebx
mov ebx, dword [0x6cb24500]
lea esi, [ecx + edx*8 - 8]
test ebx, ebx
je 0x6c91e1ec
call fcn.6c82c070
mov dword [edi], ebp
mov ebx, dword [esi]
mov dword [edi + 4], ebx
jmp 0x6c91e1ec
mov dword [esp + 0x4c], edx
mov dword [esp + 0xb4], ecx
lea ebx, str._l_f
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.6c8527a0
xor eax, eax
jmp 0x6c91e2d1
mov ecx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jge 0x6c91e945
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0xb4]
lea edx, [ecx + eax*8]
mov ebx, dword [edx + 4]
mov dword [esp + 0x54], ebx
mov edx, dword [edx]
mov dword [esp + 0xac], edx
lea ebp, [0x6c98e880]
mov dword [esp], ebp
mov esi, dword [esp + 0xfc]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.6c7d1720
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x98]
mov edx, dword [eax + 4]
mov eax, dword [eax]
nop
nop
test ecx, ecx
je 0x6c91e342
lea ebx, [esp + 0x98]
cmp ecx, ebx
je 0x6c91e350
jmp 0x6c91f2f4
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp ecx, ebx
jae 0x6c91e3b6
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x3b
mov ecx, dword [esp + 0x98]
nop
nop
test ecx, ecx
je 0x6c91e3df
lea ebx, [esp + 0x98]
cmp ecx, ebx
je 0x6c91e3ed
jmp 0x6c91f2dc
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp ecx, ebx
jae 0x6c91e44b
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x20
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x6c91e928
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x6c9cb760]
mov dword [esp + 8], edx
call fcn.6c84ee20
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x6c91e928
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.6c84e870
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x6c91e4c7
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91e4d5
jmp 0x6c91f2c4
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91e539
mov dword [esp + 0x84], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x64], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
nop
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
xor edx, edx
jmp 0x6c91e980
cmp edx, eax
jge 0x6c91e62f
mov ebx, dword [esp + 0x98]
nop
nop
test ebx, ebx
je 0x6c91e5b3
lea ebp, [esp + 0x98]
cmp ebx, ebp
je 0x6c91e5c1
jmp 0x6c91f2ac
lea ebx, [esp + 0x98]
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp ebx, ebp
jae 0x6c91e623
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov dword [esp + 0xa0], ebp
mov byte [ebp + esi - 1], 0x2a
mov ebx, dword [esp + 0x98]
nop
nop
test ebx, ebx
je 0x6c91e64c
lea ebp, [esp + 0x98]
cmp ebx, ebp
je 0x6c91e65a
jmp 0x6c91f294
lea ebx, [esp + 0x98]
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp ebx, ebp
jb 0x6c91e678
cmp edx, eax
jmp 0x6c91e6c4
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
mov eax, ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xa0], ebp
mov byte [ebp + esi - 1], 0x3d
jge 0x6c91e787
mov edx, dword [esp + 0x98]
nop
test edx, edx
je 0x6c91e6f2
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x6c91e700
jmp 0x6c91f27c
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa0]
lea ebx, [edx + 7]
mov ebp, dword [esp + 0xa4]
mov esi, dword [esp + 0x9c]
cmp ebp, ebx
jae 0x6c91e75a
mov dword [esp + 0x64], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 7
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov dword [esi + edx], 0x2d667475
mov dword [esi + edx + 3], 0x2727382d
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebp
mov dword [esp + 0x9c], esi
xor edx, edx
xor ebx, ebx
jmp 0x6c91ed89
test eax, eax
jne 0x6c91e78f
xor edx, edx
jmp 0x6c91e7b8
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x6c9cb760]
mov dword [esp + 8], edx
call fcn.6c84ee20
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x6c]
mov edx, eax
mov eax, dword [esp + 0x28]
test dl, dl
jne 0x6c91e85d
mov edx, dword [esp + 0x98]
nop
test edx, edx
je 0x6c91e7dc
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x6c91e7ea
jmp 0x6c91ed70
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x6c91e848
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x22
xor edx, edx
xor ebx, ebx
jmp 0x6c91e9ec
mov edx, dword [esp + 0x98]
nop
nop
test edx, edx
je 0x6c91e87a
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x6c91e888
jmp 0x6c91e9d3
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [eax + ebx]
mov esi, dword [esp + 0x9c]
cmp edx, ebp
jae 0x6c91e8de
mov dword [esp + 0x64], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x6c98c5c0]
mov dword [esp + 0x10], ecx
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.6c82c9c0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x6c91e2ca
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x9c]
mov edx, ecx
neg ecx
cmp eax, ecx
ja 0x6c91e970
mov dword [esp + 0x100], edx
mov dword [esp + 0x104], eax
add esp, 0xf0
ret
test edx, edx
je 0x6c91e979
call fcn.6c8237a0
call fcn.6c8237e0
mov edx, ebp
mov dword [esp + 0x64], edx
cmp edx, eax
jge 0x6c91e590
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x6c91e99d
lea ebp, [edx + 1]
jmp 0x6c91e9c1
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.6c823940
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
lea esi, [ebx - 0x20]
cmp esi, 0x5e
jbe 0x6c91e97e
cmp ebx, 9
je 0x6c91e97e
jmp 0x6c91e58e
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
inc edx
cmp edx, eax
jge 0x6c91eb8e
movzx ebp, byte [ecx + edx]
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x6c91ea06
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x6c91e9eb
cmp ebx, edx
ja 0x6c91ed67
mov ebp, edx
sub edx, ebx
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x98]
add ebx, ecx
nop
test edx, edx
je 0x6c91ea39
lea edi, [esp + 0x98]
cmp edx, edi
je 0x6c91ea47
jmp 0x6c91ed4f
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov dword [esp + 0x64], ebp
mov edx, dword [esp + 0xa4]
mov edi, dword [esp + 0xa0]
lea ecx, [esi + edi]
mov eax, dword [esp + 0x9c]
cmp edx, ecx
jae 0x6c91eaa9
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x78], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x60], edx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0xbc], eax
lea ebp, [eax + edi]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.6c82c9c0
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
test eax, eax
je 0x6c91eb0b
lea edx, [esp + 0x98]
cmp eax, edx
je 0x6c91eb19
jmp 0x6c91ed37
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x6c91eb6f
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x5c
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov ebx, edx
jmp 0x6c91e9eb
cmp ebx, eax
ja 0x6c91ed2e
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0x98]
add ecx, ebx
nop
test eax, eax
je 0x6c91ebbf
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91ebcd
jmp 0x6c91ed16
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [edx + ebx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91ec2b
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], edx
mov dword [esp + 0x74], ecx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
test eax, eax
je 0x6c91ec89
lea ecx, [esp + 0x98]
cmp eax, ecx
je 0x6c91ec97
jmp 0x6c91ecfe
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
inc ecx
mov edx, dword [esp + 0x9c]
cmp eax, ecx
jae 0x6c91eced
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], ecx
mov byte [ecx + edx - 1], 0x22
jmp 0x6c91e2ca
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
mov ecx, eax
mov eax, ebx
call fcn.6c82c140
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
mov eax, ebx
mov ecx, edx
call fcn.6c82c140
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
inc edx
cmp edx, eax
jge 0x6c91f10b
mov dword [esp + 0x48], edx
movzx ebp, byte [ecx + edx]
xchg ebp, eax
mov byte [esp + 0x25], al
xchg ebp, eax
lea esi, [ebp - 0x21]
xchg esi, eax
cmp al, 0x5e
xchg esi, eax
jb 0x6c91edb0
mov esi, 1
jmp 0x6c91ee20
xchg ebp, eax
cmp al, 0x2a
xchg ebp, eax
jne 0x6c91edbe
mov esi, 1
jmp 0x6c91ee20
xchg ebp, eax
cmp al, 0x27
xchg ebp, eax
jne 0x6c91edcc
mov esi, 1
jmp 0x6c91ee20
xchg ebp, eax
cmp al, 0x25
xchg ebp, eax
jne 0x6c91edda
mov esi, 1
jmp 0x6c91ee20
mov dword [esp + 0x40], ebx
xchg ebp, ebx
movzx eax, bl
xchg ebp, ebx
nop
lea ecx, [0x6c9b8d7c]
mov dword [esp], ecx
mov dword [esp + 4], 0xf
mov dword [esp + 8], eax
call fcn.6c84dd10
mov eax, dword [esp + 0xc]
test eax, eax
setge al
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x40]
movzx ebp, byte [esp + 0x25]
mov esi, eax
mov eax, dword [esp + 0x28]
xchg esi, eax
test al, al
xchg esi, eax
je 0x6c91ed88
cmp ebx, edx
ja 0x6c91f273
mov esi, edx
sub edx, ebx
mov edi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x98]
add ebx, ecx
nop
test edx, edx
je 0x6c91ee62
lea ecx, [esp + 0x98]
cmp edx, ecx
jne 0x6c91f25b
mov ecx, dword [esp + 0x6c]
jmp 0x6c91ee70
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
lea eax, [ecx + edi]
mov esi, dword [esp + 0x9c]
cmp edx, eax
jae 0x6c91eed4
mov dword [esp + 0x64], edi
mov dword [esp + 0x80], ebx
mov dword [esp + 0x60], ecx
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
mov dword [esp + 0xbc], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
call fcn.6c82c9c0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
nop
test eax, eax
je 0x6c91ef36
lea edx, [esp + 0x98]
cmp eax, edx
je 0x6c91ef44
jmp 0x6c91f243
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x6c91ef9a
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x25
movzx edx, byte [esp + 0x25]
mov ebx, edx
shr dl, 4
movzx edx, dl
mov ebp, dword [esp + 0x98]
lea esi, [0x6c9b926b]
movzx edx, byte [esi + edx]
nop
test ebp, ebp
je 0x6c91efd9
lea edi, [esp + 0x98]
cmp ebp, edi
je 0x6c91efe7
jmp 0x6c91f22b
lea ebp, [esp + 0x98]
mov dword [esp + 0x98], ebp
mov ebp, dword [esp + 0xa4]
mov edi, dword [esp + 0xa0]
inc edi
mov eax, dword [esp + 0x9c]
cmp ebp, edi
jae 0x6c91f051
mov byte [esp + 0x27], dl
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x9c], eax
movzx edx, byte [esp + 0x27]
movzx ebx, byte [esp + 0x25]
lea esi, [0x6c9b926b]
mov dword [esp + 0xa0], edi
mov byte [edi + eax - 1], dl
and ebx, 0xf
mov edx, dword [esp + 0x98]
movzx ebx, byte [ebx + esi]
nop
test edx, edx
je 0x6c91f07f
lea ebp, [esp + 0x98]
cmp edx, ebp
je 0x6c91f08d
jmp 0x6c91f213
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp edx, ebp
jae 0x6c91f0ec
mov byte [esp + 0x26], bl
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
movzx ebx, byte [esp + 0x26]
mov dword [esp + 0xa0], ebp
mov byte [ebp + esi - 1], bl
mov edx, dword [esp + 0x48]
lea ebx, [edx + 1]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
jmp 0x6c91ed88
cmp ebx, eax
ja 0x6c91f20a
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0x98]
add ecx, ebx
nop
test eax, eax
je 0x6c91f13c
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x6c91f14a
jmp 0x6c91f1f2
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x6c91f1a8
mov dword [esp + 0x64], edx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x60], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6c98c5c0]
mov dword [esp + 0x10], eax
call fcn.6c810610
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.6c82c9c0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x6c91e2ca
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
mov ecx, eax
mov eax, ebx
call fcn.6c82c140
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
mov eax, ebx
mov ecx, edx
call fcn.6c82c140
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
lea eax, [0x6c98c540]
mov dword [esp], eax
lea eax, [0x6c9fb0e0]
mov dword [esp + 4], eax
call fcn.6c7f9540
nop
call fcn.6c82ac40
jmp fcn.6c91dc70