Function at 0x6c9d0c20
Capabilities:
Get system information on windows

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff8
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x50
mov eax, dword [0x6cb1c754]
mov edi, dword [ecx]
test eax, eax
je 0x6c9d0db0
test byte [0x6cb1c734], 2
jne 0x6c9d0d78
cmp edi, 0xf4
ja 0x6c9d0cf0
cmp edi, 0xa
ja 0x6c9d0e58
mov edx, dword [0x6cb1c580]
mov ecx, 2
mov dword [ebp - 0x38], 0x10
mov eax, edx
shr eax, cl
test al, 3
jne 0x6c9d0e78
mov esi, dword [0x6cb1c588]
cmp esi, dword [ebp - 0x38]
jae 0x6c9d0ee8
test eax, eax
jne 0x6c9d1712
mov eax, dword [0x6cb1c584]
test eax, eax
jne 0x6c9d1948
mov eax, dword [0x6cb1c58c]
mov edi, dword [ebp - 0x38]
cmp eax, edi
jbe 0x6c9d0d0f
mov edx, dword [0x6cb1c598]
sub eax, edi
mov dword [0x6cb1c58c], eax
or eax, 1
lea ecx, [edx + edi]
mov dword [0x6cb1c598], ecx
mov dword [ecx + 4], eax
mov eax, edi
or eax, 3
mov dword [edx + 4], eax
lea eax, [edx + 8]
test byte [0x6cb1c734], 2
jne 0x6c9d0d5f
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
mov esi, dword [0x6cb1c588]
cmp edi, 0xffffffbf
jbe 0x6c9d0ec0
cmp esi, 0xffffffff
je 0x6c9d13c0
mov dword [ebp - 0x38], 0xffffffff
mov edx, dword [0x6cb1c754]
mov eax, dword [0x6cb1c758]
test edx, edx
je 0x6c9d1630
mov ebx, dword [0x6cb1c734]
mov edx, eax
neg edx
and ebx, 1
je 0x6c9d0d40
mov ecx, dword [ebp - 0x38]
cmp dword [0x6cb1c75c], ecx
jbe 0x6c9d18fa
mov edi, dword [ebp - 0x38]
lea eax, [edi + eax + 0x31]
and eax, edx
mov dword [ebp - 0x40], eax
cmp eax, edi
ja 0x6c9d0f30
xor eax, eax
test byte [0x6cb1c734], 2
je 0x6c9d0ce3
xor edx, edx
xchg dword [0x6cb1c738], edx
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
xor esi, esi
mov ebx, 1
jmp 0x6c9d0d98
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, esi
lock cmpxchg dword [0x6cb1c738], ebx
test eax, eax
jne 0x6c9d0d88
jmp 0x6c9d0c50
mov eax, 0x40000
mov edx, 0x200000
xor esi, esi
mov ebx, 1
mov dword [0x6cb1c75c], eax
mov dword [0x6cb1c760], edx
mov dword [0x6cb1c764], 7
jmp 0x6c9d0df0
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, esi
lock cmpxchg dword [0x6cb1c768], ebx
test eax, eax
jne 0x6c9d0de0
mov eax, dword [0x6cb1c750]
test eax, eax
jne 0x6c9d0e25
mov eax, dword [0x6cb1c764]
mov dword [0x6cb1c750], 0x58585858
mov dword [0x6cb1c738], 0
mov dword [0x6cb1c734], eax
xor eax, eax
xchg dword [0x6cb1c768], eax
lea eax, [ebp - 0x34]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
movss xmm0, dword [ebp - 0x30]
movss xmm3, dword [ebp - 0x18]
sub esp, 4
unpcklps xmm0, xmm3
movlps qword [0x6cb1c754], xmm0
jmp 0x6c9d0c43
lea ecx, [edi + 0xb]
mov edx, dword [0x6cb1c580]
mov eax, ecx
shr ecx, 3
and eax, 0xfffffff8
mov dword [ebp - 0x38], eax
mov eax, edx
shr eax, cl
test al, 3
je 0x6c9d0c83
not eax
and eax, 1
add ecx, eax
lea ebx, [ecx*8 + 0x6cb1c5a4]
mov eax, dword [ebx + 8]
mov esi, dword [eax + 8]
cmp ebx, esi
je 0x6c9d187d
cmp dword [0x6cb1c590], esi
ja 0x6c9d0ea2
mov dword [ebx + 8], esi
mov dword [esi + 0xc], ebx
lea edx, [ecx*8]
mov ecx, edx
or ecx, 3
mov dword [eax + 4], ecx
or dword [eax + edx + 4], 1
add eax, 8
jmp 0x6c9d0cda
mov eax, dword [0x6cb1c584]
add edi, 0xb
and edi, 0xfffffff8
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x40], eax
test eax, eax
jne 0x6c9d13f0
cmp dword [ebp - 0x38], esi
ja 0x6c9d0ca7
lea esi, [esi]
mov edi, dword [ebp - 0x38]
mov eax, dword [0x6cb1c594]
mov edx, esi
sub edx, edi
lea ecx, [eax + esi]
cmp edx, 0xf
jbe 0x6c9d1acd
mov esi, edx
lea ebx, [eax + edi]
or edi, 3
mov dword [0x6cb1c588], edx
or esi, 1
mov dword [0x6cb1c594], ebx
mov dword [ebx + 4], esi
mov dword [ecx], edx
mov dword [eax + 4], edi
add eax, 8
jmp 0x6c9d0cda
mov dword [esp + 0xc], 4
mov edi, eax
mov dword [esp + 8], 0x3000
mov dword [esp + 4], eax
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov edx, eax
lea eax, [eax - 1]
sub esp, 0x10
cmp eax, 0xfffffffd
ja 0x6c9d0d54
mov eax, dword [0x6cb1c72c]
add eax, edi
mov dword [0x6cb1c72c], eax
cmp eax, dword [0x6cb1c730]
jbe 0x6c9d0f7d
mov dword [0x6cb1c730], eax
mov edi, dword [0x6cb1c598]
mov eax, 0x6cb1c73c
mov dword [ebp - 0x3c], edi
movss xmm1, dword [ebp - 0x3c]
unpcklps xmm1, xmm1
test edi, edi
je 0x6c9d17eb
lea esi, [esi]
nop
mov ebx, dword [eax]
mov ecx, dword [eax + 4]
lea esi, [ebx + ecx]
cmp edx, esi
je 0x6c9d1320
mov eax, dword [eax + 8]
test eax, eax
jne 0x6c9d0fa0
cmp edx, dword [0x6cb1c590]
jb 0x6c9d16e0
mov eax, dword [ebp - 0x40]
mov ecx, 0x6cb1c73c
add eax, edx
lea esi, [esi]
mov esi, dword [ecx]
cmp esi, eax
je 0x6c9d11c0
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x6c9d0fd0
mov eax, 0x6cb1c73c
jmp 0x6c9d0ffb
mov eax, dword [eax + 8]
test eax, eax
je 0x6c9d2296
mov esi, dword [eax]
cmp edi, esi
jb 0x6c9d0ff0
add esi, dword [eax + 4]
cmp edi, esi
jae 0x6c9d0ff0
lea eax, [esi - 0x27]
mov ecx, 0xffffffd1
test al, 7
je 0x6c9d101c
neg eax
and eax, 7
lea ecx, [eax - 0x2f]
add ecx, esi
lea eax, [edi + 0x10]
cmp ecx, eax
cmovb ecx, edi
lea eax, [ecx + 8]
mov dword [ebp - 0x48], eax
lea eax, [ecx + 0x18]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x40]
sub eax, 0x28
mov dword [ebp - 0x44], eax
lea eax, [edx + 8]
test dl, 7
je 0x6c9d1708
neg eax
mov ebx, eax
mov eax, dword [ebp - 0x44]
and ebx, 7
mov dword [ebp - 0x4c], ebx
add ebx, edx
sub eax, dword [ebp - 0x4c]
mov dword [0x6cb1c58c], eax
or eax, 1
mov dword [0x6cb1c598], ebx
mov dword [ebx + 4], eax
mov eax, dword [ebp - 0x44]
lea ebx, [ecx + 0x1d]
mov dword [ebp - 0x44], ebx
mov dword [edx + eax + 4], 0x28
mov eax, dword [0x6cb1c760]
mov dword [0x6cb1c59c], eax
mov dword [ecx + 4], 0x1b
mov eax, dword [0x6cb1c73c]
mov dword [ecx + 8], eax
mov eax, dword [0x6cb1c740]
mov dword [ecx + 0xc], eax
mov eax, dword [0x6cb1c744]
mov dword [ecx + 0x10], eax
mov eax, dword [0x6cb1c748]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x40]
mov dword [0x6cb1c73c], edx
lea edx, [esi - 0x1d]
sub edx, ecx
mov dword [0x6cb1c740], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x40], edx
shr edx, 2
add edx, 1
cmp esi, ebx
mov ebx, 1
mov dword [0x6cb1c744], eax
mov dword [0x6cb1c748], 1
cmovae ebx, edx
mov eax, ecx
cmp dword [ebp - 0x40], 0xb
jbe 0x6c9d1125
cmp esi, dword [ebp - 0x44]
jb 0x6c9d1125
mov edx, ebx
movaps xmm0, xmmword [str._a_a_a_a]
shr edx, 2
shl edx, 4
add edx, ecx
lea esi, [esi]
movups xmmword [eax + 0x1c], xmm0
add eax, 0x10
cmp edx, eax
jne 0x6c9d1108
mov edx, dword [ebp - 0x3c]
mov eax, ebx
and eax, 0xfffffffc
lea edx, [edx + eax*4]
mov dword [ebp - 0x3c], edx
cmp eax, ebx
je 0x6c9d114b
mov edx, dword [ebp - 0x3c]
lea eax, [edx + 8]
mov dword [edx + 4], 7
cmp esi, eax
jbe 0x6c9d114b
lea eax, [edx + 0xc]
mov dword [edx + 8], 7
cmp esi, eax
jbe 0x6c9d114b
mov dword [edx + 0xc], 7
cmp edi, ecx
je 0x6c9d13a0
mov edx, ecx
and dword [ecx + 4], 0xfffffffe
sub edx, edi
mov eax, edx
or eax, 1
mov dword [edi + 4], eax
mov dword [ecx], edx
mov ecx, edx
shr ecx, 3
cmp edx, 0xff
ja 0x6c9d188b
mov eax, 1
mov ebx, dword [0x6cb1c580]
lea edx, [ecx*8 + 0x6cb1c5a4]
shl eax, cl
test ebx, eax
jne 0x6c9d1bc7
or ebx, eax
mov eax, edx
mov dword [0x6cb1c580], ebx
mov dword [ebp - 0x3c], eax
movss xmm0, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], edx
movss xmm7, dword [ebp - 0x3c]
mov dword [edx + 8], edi
unpcklps xmm0, xmm7
mov dword [eax + 0xc], edi
movlps qword [edi + 8], xmm0
jmp 0x6c9d13a0
mov ebx, dword [ecx + 0xc]
mov eax, ebx
and eax, 8
mov dword [ebp - 0x3c], eax
jne 0x6c9d0fe1
and ebx, 1
mov eax, 0x6cb1c73c
je 0x6c9d0ffb
mov eax, dword [ebp - 0x40]
mov dword [ecx], edx
add dword [ecx + 4], eax
lea eax, [edx + 8]
test dl, 7
je 0x6c9d11f9
neg eax
and eax, 7
add edx, eax
lea eax, [edx + 8]
lea ecx, [esi + 8]
test esi, 7
je 0x6c9d120b
neg ecx
and ecx, 7
add esi, ecx
mov edi, dword [ebp - 0x38]
mov ecx, esi
sub ecx, edx
lea ebx, [edx + edi]
sub ecx, edi
or edi, 3
mov dword [ebp - 0x38], ebx
movss xmm0, dword [ebp - 0x38]
mov dword [edx + 4], edi
mov dword [ebp - 0x38], ecx
unpcklps xmm0, xmm0
cmp esi, dword [0x6cb1c598]
je 0x6c9d1fa2
cmp esi, dword [0x6cb1c594]
je 0x6c9d202d
mov ecx, dword [esi + 4]
mov edx, esi
test cl, 2
jne 0x6c9d12ae
mov edi, ecx
mov edx, dword [esi + 0xc]
and edi, 0xfffffffc
mov dword [ebp - 0x44], edi
mov edi, ecx
shr edi, 3
mov dword [ebp - 0x40], edi
cmp ecx, 0xff
ja 0x6c9d2070
mov edi, dword [esi + 8]
cmp edi, edx
je 0x6c9d2248
mov ecx, dword [ebp - 0x40]
lea ecx, [ecx*8 + 0x6cb1c5a4]
mov dword [ebp - 0x40], ecx
mov ecx, dword [0x6cb1c590]
cmp edi, dword [ebp - 0x40]
jne 0x6c9d2232
cmp edx, ecx
jb 0x6c9d129d
mov dword [edi + 0xc], edx
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x44]
add dword [ebp - 0x38], edi
add esi, edi
mov edi, dword [ebp - 0x38]
mov ecx, dword [esi + 4]
lea edx, [ebx + edi]
mov edi, dword [ebp - 0x38]
and ecx, 0xfffffffe
mov dword [esi + 4], ecx
mov ecx, edi
or ecx, 1
mov dword [ebx + 4], ecx
mov ecx, edi
mov dword [edx], edi
shr ecx, 3
cmp edi, 0xff
ja 0x6c9d1fc2
mov edi, 1
mov edx, dword [0x6cb1c580]
lea esi, [ecx*8 + 0x6cb1c5a4]
shl edi, cl
test edx, edi
jne 0x6c9d2052
or edx, edi
mov dword [0x6cb1c580], edx
mov edx, esi
mov dword [ebp - 0x38], edx
movss xmm0, dword [ebp - 0x38]
mov dword [ebp - 0x38], esi
movss xmm7, dword [ebp - 0x38]
mov dword [esi + 8], ebx
unpcklps xmm0, xmm7
mov dword [edx + 0xc], ebx
movlps qword [ebx + 8], xmm0
jmp 0x6c9d0cda
mov esi, dword [eax + 0xc]
test esi, 8
jne 0x6c9d0fb7
and esi, 1
je 0x6c9d0fb7
cmp edi, ebx
jb 0x6c9d0fb7
cmp edx, edi
jbe 0x6c9d0fb7
mov edi, dword [ebp - 0x40]
add ecx, edi
mov dword [eax + 4], ecx
mov ecx, dword [0x6cb1c58c]
mov edx, dword [0x6cb1c598]
add ecx, edi
lea eax, [edx + 8]
test dl, 7
je 0x6c9d1f99
neg eax
mov ebx, ecx
and eax, 7
lea esi, [edx + eax]
sub ebx, eax
mov dword [0x6cb1c58c], ebx
or ebx, 1
mov dword [0x6cb1c598], esi
mov dword [esi + 4], ebx
mov dword [edx + ecx + 4], 0x28
mov eax, dword [0x6cb1c760]
mov dword [0x6cb1c59c], eax
lea esi, [esi]
mov eax, dword [0x6cb1c58c]
mov edi, dword [ebp - 0x38]
cmp eax, edi
ja 0x6c9d0cb3
xor eax, eax
jmp 0x6c9d0d56
mov eax, dword [0x6cb1c594]
mov esi, 0xffffffff
lea ecx, [eax - 1]
mov dword [0x6cb1c588], 0
mov dword [0x6cb1c594], 0
mov dword [eax + 4], esi
or dword [ecx + 4], 1
jmp 0x6c9d0f1f
mov eax, edi
neg eax
mov dword [ebp - 0x44], eax
mov eax, edi
shr eax, 8
cmp edi, 0xffffff
ja 0x6c9d16eb
bsr eax, eax
mov edx, edi
lea ecx, [eax + 7]
mov ebx, edi
shr edx, cl
and edx, 1
lea edi, [edx + eax*2]
mov eax, dword [edi*4 + 0x6cb1c6ac]
mov dword [ebp - 0x4c], edi
test eax, eax
je 0x6c9d1ad5
cmp edi, 0x1f
je 0x6c9d2068
shr edi, 1
mov ecx, 0x19
sub ecx, edi
mov edi, ebx
shl edi, cl
mov dword [ebp - 0x48], esi
xor ecx, ecx
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x3c], 0
jmp 0x6c9d145a
add edi, edi
mov edx, dword [eax + 4]
mov ebx, edx
and ebx, 0xfffffffc
sub ebx, dword [ebp - 0x38]
cmp ebx, esi
jae 0x6c9d1476
test ebx, ebx
je 0x6c9d1bd8
mov dword [ebp - 0x3c], eax
mov esi, ebx
mov edx, dword [eax + 0x14]
mov ebx, edi
shr ebx, 0x1f
mov eax, dword [eax + ebx*4 + 0x10]
test edx, edx
je 0x6c9d148b
cmp edx, eax
cmovne ecx, edx
test eax, eax
jne 0x6c9d1458
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], esi
mov esi, dword [ebp - 0x48]
or eax, ecx
je 0x6c9d1ad5
test ecx, ecx
je 0x6c9d1f18
mov eax, dword [ebp - 0x3c]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x3c], esi
mov ebx, dword [ebp - 0x44]
mov edi, dword [ebp - 0x38]
jmp 0x6c9d14c5
mov edx, dword [esi + 4]
mov ecx, esi
and edx, 0xfffffffc
sub edx, edi
cmp edx, ebx
jae 0x6c9d14d2
mov ebx, edx
mov eax, ecx
mov esi, dword [ecx + 0x10]
test esi, esi
jne 0x6c9d14c0
mov esi, dword [ecx + 0x14]
test esi, esi
jne 0x6c9d14c0
mov esi, dword [ebp - 0x3c]
test eax, eax
je 0x6c9d0ed9
mov edi, dword [ebp - 0x38]
mov edx, esi
sub edx, edi
cmp ebx, edx
jae 0x6c9d0ed9
mov ecx, dword [0x6cb1c590]
mov dword [ebp - 0x44], ecx
cmp ecx, eax
ja 0x6c9d0ed9
lea edx, [eax + edi]
mov dword [ebp - 0x40], edx
movss xmm0, dword [ebp - 0x40]
mov dword [ebp - 0x3c], edx
unpcklps xmm0, xmm0
cmp edx, eax
jbe 0x6c9d0ed9
mov esi, dword [eax + 0x18]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x40], esi
cmp ecx, eax
je 0x6c9d1c0d
mov edx, dword [eax + 8]
cmp dword [ebp - 0x44], edx
ja 0x6c9d1543
mov dword [edx + 0xc], ecx
mov dword [ecx + 8], edx
mov esi, dword [ebp - 0x40]
test esi, esi
je 0x6c9d15ae
mov edx, dword [eax + 0x1c]
lea esi, [edx + 0x48]
cmp dword [edx*4 + 0x6cb1c6ac], eax
je 0x6c9d1d62
mov edi, dword [ebp - 0x40]
cmp edi, dword [0x6cb1c590]
jb 0x6c9d1574
cmp dword [edi + 0x10], eax
je 0x6c9d1e92
mov dword [edi + 0x14], ecx
test ecx, ecx
je 0x6c9d15ae
mov edx, dword [0x6cb1c590]
cmp ecx, edx
jb 0x6c9d15ae
mov edi, dword [ebp - 0x40]
mov dword [ecx + 0x18], edi
mov esi, dword [eax + 0x10]
cmp edx, esi
ja 0x6c9d1599
test esi, esi
je 0x6c9d1599
mov dword [ecx + 0x10], esi
mov dword [esi + 0x18], ecx
mov edx, dword [eax + 0x14]
test edx, edx
je 0x6c9d15ae
cmp edx, dword [0x6cb1c590]
jb 0x6c9d15ae
mov dword [ecx + 0x14], edx
mov dword [edx + 0x18], ecx
cmp ebx, 0xf
jbe 0x6c9d1b14
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
or edx, 3
mov dword [eax + 4], edx
mov edx, ebx
or edx, 1
mov dword [ecx + 4], edx
mov dword [ecx + ebx], ebx
mov ecx, ebx
shr ecx, 3
cmp ebx, 0xff
ja 0x6c9d1ccd
mov esi, 1
mov edx, dword [0x6cb1c580]
lea ebx, [ecx*8 + 0x6cb1c5a4]
shl esi, cl
test edx, esi
jne 0x6c9d1e9a
or edx, esi
mov dword [0x6cb1c580], edx
mov edx, ebx
mov dword [ebp - 0x38], edx
movss xmm0, dword [ebp - 0x38]
mov dword [ebp - 0x38], ebx
movss xmm7, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
unpcklps xmm0, xmm7
mov dword [ebx + 8], ecx
mov dword [edx + 0xc], ecx
movlps qword [ecx + 8], xmm0
jmp 0x6c9d0f1f
mov eax, 0x40000
mov edx, 0x200000
xor esi, esi
mov ebx, 1
mov dword [0x6cb1c75c], eax
mov dword [0x6cb1c760], edx
mov dword [0x6cb1c764], 7
jmp 0x6c9d1670
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, esi
lock cmpxchg dword [0x6cb1c768], ebx
test eax, eax
jne 0x6c9d1660
mov eax, dword [0x6cb1c750]
test eax, eax
jne 0x6c9d16a5
mov eax, dword [0x6cb1c764]
mov dword [0x6cb1c750], 0x58585858
mov dword [0x6cb1c738], 0
mov dword [0x6cb1c734], eax
xor eax, eax
xchg dword [0x6cb1c768], eax
lea eax, [ebp - 0x34]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x30]
sub esp, 4
mov dword [ebp - 0x3c], eax
movss xmm5, dword [ebp - 0x3c]
unpcklps xmm0, xmm5
movlps qword [0x6cb1c754], xmm0
jmp 0x6c9d0d22
mov dword [0x6cb1c590], edx
jmp 0x6c9d0fc3
mov eax, dword [0x6cb1c728]
mov dword [ebp - 0x4c], 0x1f
test eax, eax
jne 0x6c9d1442
jmp 0x6c9d0ed9
mov eax, dword [ebp - 0x44]
mov ebx, edx
jmp 0x6c9d1059
mov ebx, 1
shl eax, cl
mov esi, ebx
shl esi, cl
add esi, esi
mov edi, esi
neg edi
or esi, edi
and esi, eax
mov ecx, esi
neg ecx
and ecx, esi
bsf ecx, ecx
lea esi, [ecx*8 + 0x6cb1c5a4]
mov eax, dword [esi + 8]
mov edi, dword [eax + 8]
cmp esi, edi
je 0x6c9d1be8
cmp dword [0x6cb1c590], edi
ja 0x6c9d1753
mov dword [esi + 8], edi
mov dword [edi + 0xc], esi
mov edi, dword [ebp - 0x38]
lea edx, [ecx*8]
sub edx, edi
mov ebx, edi
add edi, eax
mov esi, edx
or ebx, 3
or esi, 1
mov dword [eax + 4], ebx
mov ebx, edi
mov dword [edi + 4], esi
mov dword [eax + ecx*8], edx
mov ecx, dword [0x6cb1c588]
test ecx, ecx
je 0x6c9d17d7
shr ecx, 3
mov esi, dword [0x6cb1c594]
lea edi, [ecx*8 + 0x6cb1c5a4]
mov dword [ebp - 0x38], edi
mov edi, dword [0x6cb1c580]
mov dword [ebp - 0x3c], edi
mov edi, 1
shl edi, cl
mov ecx, edi
mov edi, dword [ebp - 0x3c]
test edi, ecx
jne 0x6c9d1bf9
or edi, ecx
mov ecx, dword [ebp - 0x38]
mov dword [0x6cb1c580], edi
mov edi, ecx
mov dword [ebp - 0x3c], ecx
movss xmm6, dword [ebp - 0x38]
movss xmm0, dword [ebp - 0x3c]
mov dword [edi + 8], esi
mov dword [ecx + 0xc], esi
unpcklps xmm0, xmm6
movlps qword [esi + 8], xmm0
mov dword [0x6cb1c588], edx
add eax, 8
mov dword [0x6cb1c594], ebx
jmp 0x6c9d0cda
mov eax, dword [ebp - 0x40]
mov ecx, 0x6cb1c6a4
mov dword [0x6cb1c590], edx
mov dword [0x6cb1c73c], edx
mov dword [0x6cb1c740], eax
mov eax, dword [0x6cb1c750]
mov dword [0x6cb1c748], 1
mov dword [0x6cb1c5a0], eax
mov eax, 0x6cb1c5a4
lea esi, [esi]
mov dword [ebp - 0x3c], eax
movss xmm0, dword [ebp - 0x3c]
add eax, 8
unpcklps xmm0, xmm0
movlps qword [eax], xmm0
cmp ecx, eax
jne 0x6c9d1820
mov ecx, dword [ebp - 0x40]
lea eax, [edx + 8]
sub ecx, 0x28
test dl, 7
je 0x6c9d1b29
neg eax
and eax, 7
mov esi, eax
lea ebx, [edx + eax]
mov eax, ecx
sub eax, esi
mov dword [0x6cb1c58c], eax
or eax, 1
mov dword [0x6cb1c598], ebx
mov dword [ebx + 4], eax
mov dword [edx + ecx + 4], 0x28
mov eax, dword [0x6cb1c760]
mov dword [0x6cb1c59c], eax
jmp 0x6c9d13a0
btr edx, ecx
mov dword [0x6cb1c580], edx
jmp 0x6c9d0ea2
mov eax, edx
shr eax, 8
cmp edx, 0xffffff
ja 0x6c9d1bb3
bsr eax, eax
mov ebx, edx
lea ecx, [eax + 7]
mov esi, 1
shr ebx, cl
mov ecx, ebx
and ecx, 1
lea ecx, [ecx + eax*2]
lea ebx, [ecx*4 + 0x12c]
shl esi, cl
mov eax, dword [0x6cb1c584]
mov dword [edi + 0x1c], ecx
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
test eax, esi
jne 0x6c9d1b32
or eax, esi
add ebx, 0x6cb1c580
mov dword [ecx*4 + 0x6cb1c6ac], edi
mov dword [0x6cb1c584], eax
mov dword [edi + 0x18], ebx
movlps qword [edi + 8], xmm1
jmp 0x6c9d13a0
lea esi, [ecx + eax + 0x1f]
and esi, edx
cmp esi, ecx
jbe 0x6c9d0d40
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x103000
mov dword [esp + 4], esi
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov edx, eax
lea eax, [eax - 1]
sub esp, 0x10
cmp eax, 0xfffffffd
jbe 0x6c9d1c4c
mov eax, dword [0x6cb1c758]
mov edx, eax
neg edx
jmp 0x6c9d0d40
mov edx, eax
mov esi, dword [ebp - 0x38]
neg edx
and eax, edx
bsf eax, eax
mov edx, dword [eax*4 + 0x6cb1c6ac]
mov ebx, dword [edx + 4]
mov eax, edx
and ebx, 0xfffffffc
sub ebx, esi
lea esi, [esi]
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x6c9d1988
mov edx, dword [ecx + 4]
and edx, 0xfffffffc
sub edx, esi
cmp edx, ebx
jae 0x6c9d197f
mov ebx, edx
mov eax, ecx
mov edx, ecx
jmp 0x6c9d1968
mov ecx, dword [edx + 0x14]
test ecx, ecx
jne 0x6c9d196f
mov edi, dword [0x6cb1c590]
mov dword [ebp - 0x44], edi
cmp edi, eax
ja 0x6c9d0ca7
mov ecx, dword [ebp - 0x38]
add ecx, eax
mov dword [ebp - 0x40], ecx
cmp ecx, eax
jbe 0x6c9d0ca7
mov ecx, dword [eax + 0x18]
mov esi, dword [eax + 0xc]
mov dword [ebp - 0x3c], ecx
cmp esi, eax
je 0x6c9d1d86
mov edx, dword [eax + 8]
cmp edi, edx
ja 0x6c9d19ce
mov dword [edx + 0xc], esi
mov dword [esi + 8], edx
mov edi, dword [ebp - 0x3c]
test edi, edi
je 0x6c9d1a39
mov edx, dword [eax + 0x1c]
lea ecx, [edx + 0x48]
cmp dword [edx*4 + 0x6cb1c6ac], eax
je 0x6c9d1dce
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [0x6cb1c590]
jb 0x6c9d19ff
cmp dword [ecx + 0x10], eax
je 0x6c9d1eab
mov dword [ecx + 0x14], esi
test esi, esi
je 0x6c9d1a39
mov edx, dword [0x6cb1c590]
cmp esi, edx
jb 0x6c9d1a39
mov ecx, dword [ebp - 0x3c]
mov dword [esi + 0x18], ecx
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x6c9d1a24
cmp edx, ecx
ja 0x6c9d1a24
mov dword [esi + 0x10], ecx
mov dword [ecx + 0x18], esi
mov edx, dword [eax + 0x14]
test edx, edx
je 0x6c9d1a39
cmp edx, dword [0x6cb1c590]
jb 0x6c9d1a39
mov dword [esi + 0x14], edx
mov dword [edx + 0x18], esi
cmp ebx, 0xf
jbe 0x6c9d1b14
mov edx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x40]
or edx, 3
mov dword [eax + 4], edx
mov edx, ebx
or edx, 1
mov dword [edi + 4], edx
mov dword [edi + ebx], ebx
mov edx, dword [0x6cb1c588]
test edx, edx
je 0x6c9d1ab9
mov esi, dword [0x6cb1c580]
mov ecx, edx
mov edi, dword [0x6cb1c594]
shr ecx, 3
mov dword [ebp - 0x38], esi
mov esi, 1
lea edx, [ecx*8 + 0x6cb1c5a4]
shl esi, cl
mov ecx, esi
mov esi, dword [ebp - 0x38]
test esi, ecx
jne 0x6c9d1eb3
or esi, ecx
mov ecx, edx
mov dword [0x6cb1c580], esi
mov dword [ebp - 0x38], ecx
movss xmm0, dword [ebp - 0x38]
mov dword [ebp - 0x38], edx
movss xmm7, dword [ebp - 0x38]
mov dword [edx + 8], edi
unpcklps xmm0, xmm7
mov dword [ecx + 0xc], edi
movlps qword [edi + 8], xmm0
mov ecx, dword [ebp - 0x40]
mov dword [0x6cb1c588], ebx
mov dword [0x6cb1c594], ecx
jmp 0x6c9d0f1f
or esi, 3
jmp 0x6c9d13cd
movzx ecx, byte [ebp - 0x4c]
mov eax, 0xfffffffe
shl eax, cl
and eax, dword [ebp - 0x40]
je 0x6c9d0ed9
mov edx, eax
neg edx
and eax, edx
bsf eax, eax
mov ecx, dword [eax*4 + 0x6cb1c6ac]
test ecx, ecx
je 0x6c9d0ed9
mov edx, dword [ecx + 4]
mov ebx, dword [ebp - 0x44]
mov dword [ebp - 0x3c], esi
xor eax, eax
mov edi, dword [ebp - 0x38]
jmp 0x6c9d14c5
add ebx, dword [ebp - 0x38]
mov edx, ebx
or edx, 3
mov dword [eax + 4], edx
or dword [eax + ebx + 4], 1
jmp 0x6c9d0f1f
mov eax, ecx
mov ebx, edx
jmp 0x6c9d1855
mov ebx, dword [ecx*4 + 0x6cb1c6ac]
mov esi, edx
cmp ecx, 0x1f
je 0x6c9d1b67
shr ecx, 1
mov eax, 0x19
sub eax, ecx
mov ecx, eax
shl esi, cl
jmp 0x6c9d1b67
mov eax, esi
add esi, esi
shr eax, 0x1f
add eax, 4
mov ecx, dword [ebx + eax*4]
test ecx, ecx
je 0x6c9d1d44
mov ebx, ecx
mov eax, dword [ebx + 4]
and eax, 0xfffffffc
cmp edx, eax
jne 0x6c9d1b50
mov eax, dword [ebx + 8]
mov edx, dword [0x6cb1c590]
mov dword [ebp - 0x3c], eax
movss xmm0, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
movss xmm7, dword [ebp - 0x3c]
unpcklps xmm0, xmm7
cmp ebx, edx
jb 0x6c9d13a0
cmp eax, edx
jb 0x6c9d13a0
mov dword [eax + 0xc], edi
mov dword [ebx + 8], edi
mov dword [edi + 0x18], 0
movlps qword [edi + 8], xmm0
jmp 0x6c9d13a0
mov esi, 0x80000000
mov ebx, 0x1a8
mov ecx, 0x1f
jmp 0x6c9d18bc
mov eax, dword [edx + 8]
cmp eax, dword [0x6cb1c590]
cmovb eax, edx
jmp 0x6c9d119c
mov esi, dword [ebp - 0x48]
mov edi, dword [ebp - 0x38]
mov ecx, eax
mov dword [ebp - 0x3c], esi
jmp 0x6c9d14c5
shl ebx, cl
not ebx
and edx, ebx
mov dword [0x6cb1c580], edx
jmp 0x6c9d1753
mov edi, dword [ebp - 0x38]
mov ecx, dword [edi + 8]
cmp ecx, dword [0x6cb1c590]
cmovb ecx, edi
jmp 0x6c9d17bd
mov edx, dword [eax + 0x14]
lea esi, [eax + 0x14]
test edx, edx
je 0x6c9d1ec4
lea esi, [esi]
nop
mov edi, esi
mov ecx, edx
lea esi, [edx + 0x14]
mov edx, dword [edx + 0x14]
test edx, edx
jne 0x6c9d1c20
mov edx, dword [ecx + 0x10]
lea esi, [ecx + 0x10]
test edx, edx
jne 0x6c9d1c20
cmp dword [ebp - 0x44], edi
ja 0x6c9d1543
mov dword [edi], 0
jmp 0x6c9d1543
lea eax, [edx + 8]
test dl, 7
je 0x6c9d1dc4
neg eax
mov ecx, esi
mov ebx, eax
and ebx, 7
lea eax, [edx + ebx]
sub ecx, ebx
or ebx, 1
mov dword [ebp - 0x38], eax
add eax, 8
sub ecx, 0x10
mov dword [ebp - 0x40], ebx
movss xmm0, dword [ebp - 0x40]
mov edi, ecx
or edi, 2
mov dword [ebp - 0x3c], edi
movss xmm7, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x38]
unpcklps xmm0, xmm7
movlps qword [edi], xmm0
movlps xmm0, qword [0x6ca8e8b0]
movlps qword [edi + ecx + 4], xmm0
cmp edx, dword [0x6cb1c590]
jae 0x6c9d1caa
mov dword [0x6cb1c590], edx
add esi, dword [0x6cb1c72c]
mov dword [0x6cb1c72c], esi
cmp esi, dword [0x6cb1c730]
jbe 0x6c9d0cda
mov dword [0x6cb1c730], esi
jmp 0x6c9d0cda
mov edx, ebx
shr edx, 8
cmp ebx, 0xffffff
ja 0x6c9d1e7e
bsr edx, edx
mov edi, ebx
lea ecx, [edx + 7]
shr edi, cl
mov ecx, edi
and ecx, 1
lea ecx, [ecx + edx*2]
mov edx, 1
lea esi, [ecx*4 + 0x12c]
shl edx, cl
mov edi, dword [ebp - 0x3c]
mov dword [edi + 0x1c], ecx
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov edi, dword [0x6cb1c584]
test edi, edx
jne 0x6c9d1df2
or edi, edx
add esi, 0x6cb1c580
mov dword [0x6cb1c584], edi
mov edi, dword [ebp - 0x3c]
mov dword [ecx*4 + 0x6cb1c6ac], edi
mov dword [edi + 0x18], esi
movlps qword [edi + 8], xmm0
jmp 0x6c9d0f1f
lea edx, [ebx + eax*4]
cmp dword [0x6cb1c590], edx
ja 0x6c9d13a0
mov dword [ebx + eax*4], edi
mov dword [edi + 0x18], ebx
movlps qword [edi + 8], xmm1
jmp 0x6c9d13a0
mov dword [esi*4 + 0x6cb1c58c], ecx
test ecx, ecx
jne 0x6c9d1578
mov ecx, dword [eax + 0x1c]
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6cb1c584], edx
jmp 0x6c9d15ae
mov edx, dword [eax + 0x14]
lea ecx, [eax + 0x14]
test edx, edx
je 0x6c9d1f23
lea esi, [esi]
mov edi, ecx
mov esi, edx
lea ecx, [edx + 0x14]
mov edx, dword [edx + 0x14]
test edx, edx
jne 0x6c9d1d98
mov edx, dword [esi + 0x10]
lea ecx, [esi + 0x10]
test edx, edx
jne 0x6c9d1d98
cmp dword [ebp - 0x44], edi
ja 0x6c9d19ce
mov dword [edi], 0
jmp 0x6c9d19ce
mov dword [ebp - 0x38], edx
mov ecx, esi
jmp 0x6c9d1c6f
mov dword [ecx*4 + 0x6cb1c58c], esi
test esi, esi
jne 0x6c9d1a03
mov ecx, dword [eax + 0x1c]
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6cb1c584], edx
jmp 0x6c9d1a39
mov edx, dword [ecx*4 + 0x6cb1c6ac]
mov esi, ebx
cmp ecx, 0x1f
je 0x6c9d1e2f
shr ecx, 1
mov esi, ecx
mov ecx, 0x19
sub ecx, esi
mov esi, ebx
shl esi, cl
jmp 0x6c9d1e2f
mov ecx, esi
add esi, esi
shr ecx, 0x1f
add ecx, 4
mov edi, dword [edx + ecx*4]
test edi, edi
je 0x6c9d1f78
mov edx, edi
mov ecx, dword [edx + 4]
and ecx, 0xfffffffc
cmp ebx, ecx
jne 0x6c9d1e18
mov ecx, dword [edx + 8]
mov ebx, dword [0x6cb1c590]
mov dword [ebp - 0x38], ecx
movss xmm0, dword [ebp - 0x38]
mov dword [ebp - 0x38], edx
movss xmm7, dword [ebp - 0x38]
unpcklps xmm0, xmm7
cmp edx, ebx
jb 0x6c9d0f1f
cmp ecx, ebx
jb 0x6c9d0f1f
mov edi, dword [ebp - 0x3c]
mov dword [ecx + 0xc], edi
mov dword [edx + 8], edi
mov dword [edi + 0x18], 0
movlps qword [edi + 8], xmm0
jmp 0x6c9d0f1f
mov edx, 0x80000000
mov esi, 0x1a8
mov ecx, 0x1f
jmp 0x6c9d1cfe
mov dword [edi + 0x10], ecx
jmp 0x6c9d1574
mov edx, dword [ebx + 8]
cmp edx, dword [0x6cb1c590]
cmovb edx, ebx
jmp 0x6c9d1605
mov dword [ecx + 0x10], esi
jmp 0x6c9d19ff
mov ecx, dword [edx + 8]
cmp ecx, dword [0x6cb1c590]
cmovb ecx, edx
jmp 0x6c9d1a9c
mov edx, dword [eax + 0x10]
lea esi, [eax + 0x10]
test edx, edx
jne 0x6c9d1c20
cmp dword [ebp - 0x40], 0
je 0x6c9d15ae
mov edx, dword [eax + 0x1c]
lea ecx, [edx + 0x48]
cmp dword [edx*4 + 0x6cb1c6ac], eax
je 0x6c9d226a
mov ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x44], ecx
ja 0x6c9d15ae
cmp eax, dword [ecx + 0x10]
je 0x6c9d225e
mov ecx, dword [ebp - 0x40]
mov dword [ecx + 0x14], 0
jmp 0x6c9d15ae
mov eax, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x44]
jmp 0x6c9d14e3
mov edx, dword [eax + 0x10]
lea ecx, [eax + 0x10]
test edx, edx
jne 0x6c9d1d98
cmp dword [ebp - 0x3c], 0
je 0x6c9d1a39
mov edx, dword [eax + 0x1c]
lea ecx, [edx + 0x48]
cmp dword [edx*4 + 0x6cb1c6ac], eax
je 0x6c9d2286
mov ecx, dword [ebp - 0x3c]
cmp dword [ebp - 0x44], ecx
ja 0x6c9d1a39
cmp eax, dword [ecx + 0x10]
je 0x6c9d227a
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x14], 0
jmp 0x6c9d1a39
lea ebx, [edx + ecx*4]
cmp dword [0x6cb1c590], ebx
ja 0x6c9d0f1f
mov edi, dword [ebp - 0x3c]
mov dword [edx + ecx*4], edi
mov dword [edi + 0x18], edx
movlps qword [edi + 8], xmm0
jmp 0x6c9d0f1f
mov ebx, ecx
mov esi, edx
jmp 0x6c9d1376
mov edx, dword [ebp - 0x38]
add edx, dword [0x6cb1c58c]
mov dword [0x6cb1c598], ebx
mov dword [0x6cb1c58c], edx
or edx, 1
mov dword [ebx + 4], edx
jmp 0x6c9d0cda
mov edx, edi
mov ecx, 0x1f
shr edx, 8
cmp edi, 0xffffff
ja 0x6c9d1fe5
bsr edx, edx
lea ecx, [edx + 7]
add edx, edx
shr edi, cl
mov ecx, edi
and ecx, 1
add ecx, edx
mov esi, 1
mov edx, dword [0x6cb1c584]
mov dword [ebx + 0x1c], ecx
shl esi, cl
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
test edx, esi
jne 0x6c9d2115
or edx, esi
mov dword [ecx*4 + 0x6cb1c6ac], ebx
mov dword [0x6cb1c584], edx
lea edx, [ecx*4 + 0x6cb1c6ac]
mov dword [ebx + 0x18], edx
movlps qword [ebx + 8], xmm0
jmp 0x6c9d0cda
mov edx, dword [ebp - 0x38]
add edx, dword [0x6cb1c588]
mov dword [0x6cb1c594], ebx
mov ecx, edx
mov dword [0x6cb1c588], edx
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [ebx + edx], edx
jmp 0x6c9d0cda
mov edx, dword [esi + 8]
cmp edx, dword [0x6cb1c590]
jae 0x6c9d12f8
mov edx, esi
jmp 0x6c9d12f8
mov edi, dword [ebp - 0x38]
jmp 0x6c9d1442
mov ecx, dword [esi + 0x18]
mov dword [ebp - 0x40], ecx
cmp esi, edx
je 0x6c9d21b6
mov ecx, dword [esi + 8]
cmp ecx, dword [0x6cb1c590]
jb 0x6c9d208f
mov dword [ecx + 0xc], edx
mov dword [edx + 8], ecx
cmp dword [ebp - 0x40], 0
je 0x6c9d129d
mov ecx, dword [esi + 0x1c]
lea edi, [ecx + 0x48]
cmp esi, dword [ecx*4 + 0x6cb1c6ac]
je 0x6c9d220e
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [0x6cb1c590]
jb 0x6c9d20c6
cmp esi, dword [ecx + 0x10]
je 0x6c9d21ff
mov ecx, dword [ebp - 0x40]
mov dword [ecx + 0x14], edx
test edx, edx
je 0x6c9d129d
mov edi, dword [0x6cb1c590]
cmp edx, edi
jb 0x6c9d129d
mov ecx, dword [ebp - 0x40]
mov dword [edx + 0x18], ecx
mov ecx, dword [esi + 0x10]
cmp edi, ecx
ja 0x6c9d20f3
test ecx, ecx
je 0x6c9d20f3
mov dword [edx + 0x10], ecx
mov dword [ecx + 0x18], edx
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x6c9d129d
cmp ecx, dword [0x6cb1c590]
jb 0x6c9d129d
mov dword [edx + 0x14], ecx
mov dword [ecx + 0x18], edx
jmp 0x6c9d129d
mov edx, dword [ecx*4 + 0x6cb1c6ac]
cmp ecx, 0x1f
je 0x6c9d212d
shr ecx, 1
mov esi, 0x19
sub esi, ecx
mov dword [ebp - 0x3c], esi
mov esi, dword [ebp - 0x38]
movzx ecx, byte [ebp - 0x3c]
shl esi, cl
jmp 0x6c9d214b
mov ecx, esi
add esi, esi
shr ecx, 0x1f
add ecx, 4
mov edi, dword [edx + ecx*4]
test edi, edi
je 0x6c9d2198
mov edx, edi
mov ecx, dword [edx + 4]
and ecx, 0xfffffffc
cmp dword [ebp - 0x38], ecx
jne 0x6c9d2138
mov ecx, dword [edx + 8]
mov esi, dword [0x6cb1c590]
mov dword [ebp - 0x38], ecx
movss xmm0, dword [ebp - 0x38]
mov dword [ebp - 0x38], edx
movss xmm6, dword [ebp - 0x38]
unpcklps xmm0, xmm6
cmp ecx, esi
jb 0x6c9d0cda
cmp edx, esi
jb 0x6c9d0cda
mov dword [ecx + 0xc], ebx
mov dword [edx + 8], ebx
mov dword [ebx + 0x18], 0
movlps qword [ebx + 8], xmm0
jmp 0x6c9d0cda
lea esi, [edx + ecx*4]
cmp dword [0x6cb1c590], esi
ja 0x6c9d0cda
mov dword [edx + ecx*4], ebx
mov dword [ebx + 0x18], edx
movlps qword [ebx + 8], xmm0
jmp 0x6c9d0cda
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x6c9d21f3
lea edi, [esi + 0x14]
mov dword [ebp - 0x48], edi
mov edx, ecx
lea edi, [ecx + 0x14]
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6c9d21c0
mov ecx, dword [edx + 0x10]
lea edi, [edx + 0x10]
test ecx, ecx
jne 0x6c9d21c0
mov ecx, dword [ebp - 0x48]
cmp dword [0x6cb1c590], ecx
ja 0x6c9d208f
mov dword [ecx], 0
jmp 0x6c9d208f
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x6c9d2207
lea edi, [esi + 0x10]
jmp 0x6c9d21c0
mov dword [ecx + 0x10], edx
jmp 0x6c9d20c6
xor edx, edx
jmp 0x6c9d208f
mov dword [edi*4 + 0x6cb1c58c], edx
test edx, edx
jne 0x6c9d20ce
mov ecx, dword [esi + 0x1c]
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6cb1c584], edx
jmp 0x6c9d129d
cmp edi, ecx
jb 0x6c9d129d
cmp dword [ebp - 0x40], edx
je 0x6c9d1297
jmp 0x6c9d1293
movzx ecx, byte [ebp - 0x40]
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6cb1c580], edx
jmp 0x6c9d129d
mov dword [ecx + 0x10], 0
jmp 0x6c9d15ae
mov dword [ecx*4 + 0x6cb1c58c], 0
jmp 0x6c9d1d71
mov dword [ecx + 0x10], 0
jmp 0x6c9d1a39
mov dword [ecx*4 + 0x6cb1c58c], 0
jmp 0x6c9d1ddd
jmp 0x6ca6195f
mov eax, dword [pe_dos_header]
ud2