Function at 0x6c99b740
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
lea ecx, [ebp + 8]
sub esp, 0x50
mov esi, dword [0x6ca3e8b0]
mov ebx, dword [ecx]
test esi, esi
je 0x6c99b8d0
test byte [0x6ca3e894], 2
jne 0x6c99b810
cmp ebx, 0xf4
ja 0x6c99b84a
cmp ebx, 0xa
jbe 0x6c99b9f0
add ebx, 0xb
mov edi, dword [0x6ca3e6e0]
and ebx, 0xfffffff8
mov ecx, ebx
mov eax, edi
mov dword [ebp - 0x38], ebx
shr ecx, 3
shr eax, cl
test al, 3
jne 0x6c99ba0e
mov esi, dword [0x6ca3e6e8]
cmp esi, dword [ebp - 0x38]
jae 0x6c99bcc0
test eax, eax
jne 0x6c99c2c0
mov eax, dword [0x6ca3e6e4]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x6c99b87e
mov edx, eax
neg eax
mov ecx, dword [ebp - 0x38]
and eax, edx
bsf eax, eax
mov eax, dword [eax*4 + 0x6ca3e80c]
mov edx, dword [eax + 4]
mov dword [ebp - 0x3c], eax
and edx, 0xfffffffc
sub edx, ecx
mov ebx, edx
lea esi, [esi]
lea esi, [esi]
mov edx, dword [eax + 0x10]
test edx, edx
je 0x6c99c1c0
mov eax, dword [edx + 4]
and eax, 0xfffffffc
sub eax, ecx
cmp eax, ebx
jae 0x6c99b80c
mov dword [ebp - 0x3c], edx
mov ebx, eax
mov eax, edx
jmp 0x6c99b7f0
xor edi, edi
mov esi, 1
jmp 0x6c99b830
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, edi
lock cmpxchg dword [0x6ca3e898], esi
test eax, eax
jne 0x6c99b820
cmp ebx, 0xf4
jbe 0x6c99b776
mov esi, dword [0x6ca3e6e8]
mov dword [ebp - 0x3c], esi
cmp ebx, 0xffffffbf
ja 0x6c99b972
add ebx, 0xb
mov eax, dword [0x6ca3e6e4]
and ebx, 0xfffffff8
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x44], eax
test eax, eax
jne 0x6c99bf10
cmp dword [ebp - 0x38], esi
jbe 0x6c99bcc0
mov eax, dword [0x6ca3e6ec]
mov edi, dword [ebp - 0x38]
cmp edi, eax
jae 0x6c99b98a
mov edx, dword [0x6ca3e6f8]
sub eax, edi
mov dword [0x6ca3e6ec], eax
or eax, 1
lea ecx, [edx + edi]
or edi, 3
mov dword [0x6ca3e6f8], ecx
mov dword [ecx + 4], eax
lea eax, [edx + 8]
mov dword [edx + 4], edi
test byte [0x6ca3e894], 2
jne 0x6c99b9de
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [0x6ca3e8b8], 0x40000
xor edi, edi
mov esi, 1
mov dword [0x6ca3e8bc], 0x200000
mov dword [0x6ca3e8c0], 7
jmp 0x6c99b910
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, edi
lock cmpxchg dword [0x6ca3e8c4], esi
test eax, eax
jne 0x6c99b900
mov ecx, dword [0x6ca3e8ac]
test ecx, ecx
jne 0x6c99b946
mov eax, dword [0x6ca3e8c0]
mov dword [0x6ca3e8ac], 0x58585858
mov dword [0x6ca3e898], 0
mov dword [0x6ca3e894], eax
xor eax, eax
xchg dword [0x6ca3e8c4], eax
lea eax, [ebp - 0x34]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x30]
sub esp, 4
mov dword [0x6ca3e8b0], eax
mov eax, dword [ebp - 0x18]
mov dword [0x6ca3e8b4], eax
jmp 0x6c99b75d
mov eax, dword [0x6ca3e6f4]
mov dword [ebp - 0x38], 0xffffffff
lea ecx, [eax - 1]
cmp esi, 0xffffffff
je 0x6c99bd03
mov edx, dword [0x6ca3e8b0]
mov eax, dword [0x6ca3e8b4]
test edx, edx
je 0x6c99c0f0
mov ebx, dword [0x6ca3e894]
mov edx, eax
neg edx
and ebx, 1
je 0x6c99b9bb
mov edi, dword [ebp - 0x38]
cmp dword [0x6ca3e8b8], edi
jbe 0x6c99c4b0
mov esi, dword [ebp - 0x38]
lea eax, [esi + eax + 0x31]
and eax, edx
mov dword [ebp - 0x40], eax
cmp eax, esi
ja 0x6c99ba50
xor eax, eax
test byte [0x6ca3e894], 2
je 0x6c99b8c0
xor edx, edx
xchg dword [0x6ca3e898], edx
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
ret
mov edi, dword [0x6ca3e6e0]
mov ecx, 2
mov dword [ebp - 0x38], 0x10
mov eax, edi
shr eax, cl
test al, 3
je 0x6c99b79f
not eax
and eax, 1
add ecx, eax
lea edx, [ecx*8 + 0x6ca3e704]
mov eax, dword [edx + 8]
mov ebx, dword [eax + 8]
cmp edx, ebx
je 0x6c99c420
cmp dword [0x6ca3e6f0], ebx
ja 0x6c99ba38
mov dword [edx + 8], ebx
mov dword [ebx + 0xc], edx
shl ecx, 3
mov edx, ecx
or edx, 3
mov dword [eax + 4], edx
or dword [eax + ecx + 4], 1
add eax, 8
jmp 0x6c99b8b3
mov edi, eax
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x3000
mov dword [esp + 4], eax
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov ebx, eax
lea eax, [eax - 1]
sub esp, 0x10
cmp eax, 0xfffffffd
ja 0x6c99b9cf
mov eax, dword [0x6ca3e88c]
add eax, edi
mov dword [0x6ca3e88c], eax
cmp eax, dword [0x6ca3e890]
jbe 0x6c99ba9d
mov dword [0x6ca3e890], eax
mov edx, dword [0x6ca3e6f8]
mov ecx, 0x6ca3e89c
test edx, edx
je 0x6c99c390
mov eax, dword [ecx]
mov esi, dword [ecx + 4]
lea edi, [eax + esi]
cmp ebx, edi
je 0x6c99be50
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x6c99bab0
cmp ebx, dword [0x6ca3e6f0]
jb 0x6c99c191
mov eax, dword [ebp - 0x40]
mov ecx, 0x6ca3e89c
lea edi, [ebx + eax]
nop
cmp dword [ecx], edi
je 0x6c99bd20
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x6c99bae0
mov eax, 0x6ca3e89c
jmp 0x6c99bb0b
mov eax, dword [eax + 8]
test eax, eax
je 0x6c99cd93
mov ecx, dword [eax]
cmp edx, ecx
jb 0x6c99bb00
add ecx, dword [eax + 4]
cmp edx, ecx
jae 0x6c99bb00
mov eax, ecx
mov dword [ebp - 0x3c], ecx
mov ecx, 0xffffffd1
sub eax, 0x27
test al, 7
je 0x6c99bb31
neg eax
and eax, 7
lea ecx, [eax - 0x2f]
add ecx, dword [ebp - 0x3c]
lea eax, [edx + 0x10]
cmp ecx, eax
cmovb ecx, edx
lea eax, [ecx + 0x18]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x40]
lea esi, [eax - 0x28]
lea eax, [ebx + 8]
test al, 7
je 0x6c99c2b3
neg eax
and eax, 7
lea edi, [ebx + eax]
mov dword [ebp - 0x44], edi
mov edi, esi
sub edi, eax
mov eax, edi
mov edi, dword [ebp - 0x44]
mov dword [0x6ca3e6ec], eax
or eax, 1
mov dword [0x6ca3e6f8], edi
mov dword [edi + 4], eax
mov eax, dword [0x6ca3e8bc]
lea edi, [ecx + 0x1d]
mov dword [ebx + esi + 4], 0x28
mov esi, dword [ebp - 0x3c]
mov dword [0x6ca3e6fc], eax
mov eax, dword [0x6ca3e89c]
mov dword [ecx + 4], 0x1b
mov dword [ecx + 8], eax
mov eax, dword [0x6ca3e8a0]
mov dword [ecx + 0xc], eax
mov eax, dword [0x6ca3e8a4]
mov dword [ecx + 0x10], eax
mov eax, dword [0x6ca3e8a8]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x40]
mov dword [0x6ca3e89c], ebx
lea ebx, [esi - 0x1d]
sub ebx, ecx
mov dword [0x6ca3e8a0], eax
lea eax, [ecx + 8]
mov esi, ebx
mov dword [0x6ca3e8a4], eax
mov eax, ecx
mov dword [0x6ca3e8a8], 1
shr esi, 2
add esi, 1
cmp dword [ebp - 0x3c], edi
mov dword [ebp - 0x40], esi
mov esi, 1
cmovae esi, dword [ebp - 0x40]
cmp ebx, 0xb
jbe 0x6c99bc33
cmp dword [ebp - 0x3c], edi
jb 0x6c99bc33
mov ebx, esi
movaps xmm0, xmmword [0x6ca307b0]
mov edi, dword [ebp - 0x3c]
shr ebx, 2
shl ebx, 4
add ebx, ecx
movups xmmword [eax + 0x1c], xmm0
add eax, 0x10
cmp ebx, eax
jne 0x6c99bc13
mov dword [ebp - 0x3c], edi
mov eax, esi
mov edi, dword [ebp - 0x48]
and eax, 0xfffffffc
lea edi, [edi + eax*4]
mov dword [ebp - 0x48], edi
cmp eax, esi
je 0x6c99bc5c
mov esi, dword [ebp - 0x48]
mov edi, dword [ebp - 0x3c]
lea eax, [esi + 8]
mov dword [esi + 4], 7
cmp edi, eax
jbe 0x6c99bc5c
lea eax, [esi + 0xc]
mov dword [esi + 8], 7
cmp edi, eax
jbe 0x6c99bc5c
mov dword [esi + 0xc], 7
cmp edx, ecx
je 0x6c99bcb1
mov esi, ecx
and dword [ecx + 4], 0xfffffffe
sub esi, edx
mov eax, esi
or eax, 1
mov dword [edx + 4], eax
mov dword [ecx], esi
mov ecx, esi
shr ecx, 3
cmp ecx, 0x1f
ja 0x6c99c430
mov eax, 1
mov esi, dword [0x6ca3e6e0]
lea ebx, [ecx*8 + 0x6ca3e704]
shl eax, cl
test esi, eax
jne 0x6c99c630
or eax, esi
mov dword [0x6ca3e6e0], eax
mov eax, ebx
mov dword [ebx + 8], edx
mov dword [eax + 0xc], edx
mov dword [edx + 8], eax
mov dword [edx + 0xc], ebx
mov eax, dword [0x6ca3e6ec]
mov dword [ebp - 0x3c], eax
jmp 0x6c99bed0
mov edi, dword [ebp - 0x38]
mov edx, esi
mov eax, dword [0x6ca3e6f4]
sub edx, edi
lea ecx, [eax + esi]
cmp edx, 0xf
jbe 0x6c99bd00
mov esi, edx
lea ebx, [eax + edi]
or edi, 3
mov dword [0x6ca3e6e8], edx
or esi, 1
mov dword [0x6ca3e6f4], ebx
mov dword [ebx + 4], esi
mov dword [ecx], edx
mov dword [eax + 4], edi
add eax, 8
jmp 0x6c99b8b3
or esi, 3
mov dword [0x6ca3e6e8], 0
mov dword [0x6ca3e6f4], 0
mov dword [eax + 4], esi
or dword [ecx + 4], 1
jmp 0x6c99bcf3
mov esi, dword [ecx + 0xc]
test esi, 8
jne 0x6c99baef
and esi, 1
mov eax, 0x6ca3e89c
je 0x6c99bb0b
mov eax, dword [ebp - 0x40]
add dword [ecx + 4], eax
lea eax, [ebx + 8]
mov dword [ecx], ebx
test al, 7
je 0x6c99bd56
neg eax
and eax, 7
add ebx, eax
lea eax, [ebx + 8]
lea ecx, [edi + 8]
test cl, 7
je 0x6c99bd65
neg ecx
and ecx, 7
add edi, ecx
mov ecx, dword [ebp - 0x38]
lea esi, [ebx + ecx]
mov ecx, edi
sub ecx, ebx
mov dword [ebp - 0x3c], esi
mov esi, ecx
mov ecx, dword [ebp - 0x38]
sub esi, ecx
or ecx, 3
mov dword [ebp - 0x38], esi
mov dword [ebx + 4], ecx
cmp edx, edi
je 0x6c99ca3b
cmp dword [0x6ca3e6f4], edi
je 0x6c99cad0
mov edx, dword [edi + 4]
test dl, 2
jne 0x6c99bde8
and edx, 0xfffffffc
mov dword [ebp - 0x48], edx
shr edx, 3
mov ecx, edx
mov edx, dword [edi + 0xc]
cmp ecx, 0x1f
ja 0x6c99caf8
mov ebx, dword [edi + 8]
cmp ebx, edx
je 0x6c99cd04
lea ecx, [ecx*8 + 0x6ca3e704]
cmp ebx, ecx
jne 0x6c99cd67
cmp dword [0x6ca3e6f0], edx
ja 0x6c99bddd
mov dword [ebx + 0xc], edx
mov dword [edx + 8], ebx
mov esi, dword [ebp - 0x48]
add dword [ebp - 0x38], esi
add edi, esi
mov edx, dword [edi + 4]
mov esi, dword [ebp - 0x38]
and edx, 0xfffffffe
mov dword [edi + 4], edx
mov edi, dword [ebp - 0x3c]
mov edx, esi
or edx, 1
mov dword [edi + 4], edx
mov dword [edi + esi], esi
shr esi, 3
mov ecx, esi
cmp esi, 0x1f
ja 0x6c99ca5d
mov edi, 1
mov ebx, dword [0x6ca3e6e0]
lea edx, [esi*8 + 0x6ca3e704]
shl edi, cl
test ebx, edi
jne 0x6c99cbe3
or ebx, edi
mov ecx, edx
mov dword [0x6ca3e6e0], ebx
mov esi, dword [ebp - 0x3c]
mov dword [edx + 8], esi
mov dword [ecx + 0xc], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
jmp 0x6c99b8b3
mov edi, dword [ecx + 0xc]
test edi, 8
jne 0x6c99bac7
and edi, 1
je 0x6c99bac7
cmp edx, eax
jb 0x6c99bac7
cmp ebx, edx
jbe 0x6c99bac7
mov eax, dword [ebp - 0x40]
add esi, eax
add eax, dword [0x6ca3e6ec]
mov dword [ecx + 4], esi
mov ecx, eax
lea eax, [edx + 8]
test al, 7
je 0x6c99ca2e
neg eax
and eax, 7
lea esi, [edx + eax]
mov dword [ebp - 0x44], esi
mov esi, ecx
sub esi, eax
mov dword [ebp - 0x3c], esi
mov eax, esi
mov esi, dword [ebp - 0x44]
mov dword [0x6ca3e6ec], eax
or eax, 1
mov dword [0x6ca3e6f8], esi
mov dword [esi + 4], eax
mov eax, dword [0x6ca3e8bc]
mov dword [edx + ecx + 4], 0x28
mov dword [0x6ca3e6fc], eax
lea esi, [esi]
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
cmp eax, esi
jbe 0x6c99b9cf
mov edi, dword [ebp - 0x44]
sub eax, esi
mov dword [0x6ca3e6ec], eax
or eax, 1
mov edx, edi
add edx, esi
or esi, 3
mov dword [0x6ca3e6f8], edx
mov dword [edx + 4], eax
lea eax, [edi + 8]
mov dword [edi + 4], esi
jmp 0x6c99b8b3
mov eax, ebx
mov ecx, ebx
neg eax
mov dword [ebp - 0x48], eax
mov eax, ebx
shr eax, 8
cmp eax, 0xffff
ja 0x6c99c1a0
bsr eax, eax
mov edx, ebx
lea ecx, [eax + 7]
shr edx, cl
and edx, 1
lea edi, [edx + eax*2]
mov eax, dword [edi*4 + 0x6ca3e80c]
mov dword [ebp - 0x50], edi
test eax, eax
je 0x6c99c580
cmp edi, 0x1f
je 0x6c99cc6d
shr edi, 1
mov ecx, 0x19
sub ecx, edi
shl ebx, cl
mov ecx, ebx
xor edi, edi
mov dword [ebp - 0x4c], esi
mov esi, dword [ebp - 0x48]
mov dword [ebp - 0x40], edi
jmp 0x6c99bf72
add ecx, ecx
mov edx, dword [eax + 4]
mov ebx, edx
and ebx, 0xfffffffc
sub ebx, dword [ebp - 0x38]
cmp ebx, esi
jae 0x6c99bf8e
test ebx, ebx
je 0x6c99c6d0
mov dword [ebp - 0x40], eax
mov esi, ebx
mov edx, ecx
mov ebx, dword [eax + 0x14]
shr edx, 0x1f
add edx, 4
mov eax, dword [eax + edx*4]
test ebx, ebx
je 0x6c99bfa5
cmp ebx, eax
cmovne edi, ebx
test eax, eax
jne 0x6c99bf70
mov eax, edi
mov edx, edi
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x48], esi
mov esi, dword [ebp - 0x4c]
or eax, edi
je 0x6c99c580
mov eax, edx
test edx, edx
je 0x6c99c9f0
mov edx, dword [edx + 4]
mov ebx, dword [ebp - 0x48]
mov dword [ebp - 0x40], esi
mov esi, dword [ebp - 0x38]
jmp 0x6c99bfe5
mov edx, dword [ecx + 4]
mov eax, ecx
and edx, 0xfffffffc
sub edx, esi
cmp edx, ebx
jae 0x6c99bff2
mov ebx, edx
mov edi, eax
mov ecx, dword [eax + 0x10]
test ecx, ecx
jne 0x6c99bfe0
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x6c99bfe0
mov esi, dword [ebp - 0x40]
test edi, edi
je 0x6c99b875
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
sub eax, edx
cmp eax, ebx
jbe 0x6c99b875
mov ecx, dword [0x6ca3e6f0]
mov dword [ebp - 0x48], ecx
cmp ecx, edi
ja 0x6c99b875
lea eax, [edi + edx]
mov dword [ebp - 0x4c], eax
cmp eax, edi
jbe 0x6c99b875
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x40], eax
mov eax, dword [edi + 0xc]
cmp eax, edi
je 0x6c99c778
mov edx, dword [edi + 8]
cmp ecx, edx
ja 0x6c99c058
mov dword [edx + 0xc], eax
mov dword [eax + 8], edx
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x6c99c0ba
mov ecx, dword [edi + 0x1c]
lea edx, [ecx + 0x48]
cmp dword [edx*4 + 0x6ca3e6ec], edi
je 0x6c99c8a1
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x48], esi
ja 0x6c99c086
cmp dword [esi + 0x10], edi
je 0x6c99c8f0
mov dword [esi + 0x14], eax
test eax, eax
je 0x6c99c0ba
mov esi, dword [ebp - 0x48]
cmp esi, eax
ja 0x6c99c0ba
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x18], edx
mov edx, dword [edi + 0x10]
test edx, edx
je 0x6c99c0a8
cmp esi, edx
ja 0x6c99c0a8
mov dword [eax + 0x10], edx
mov dword [edx + 0x18], eax
mov edx, dword [edi + 0x14]
cmp dword [ebp - 0x48], edx
ja 0x6c99c0ba
test edx, edx
je 0x6c99c0ba
mov dword [eax + 0x14], edx
mov dword [edx + 0x18], eax
cmp ebx, 0xf
ja 0x6c99c5d0
add ebx, dword [ebp - 0x38]
mov eax, ebx
or eax, 3
mov dword [edi + 4], eax
or dword [edi + ebx + 4], 1
mov eax, edi
add eax, 8
jne 0x6c99b8b3
mov esi, dword [ebp - 0x3c]
jmp 0x6c99b875
mov dword [0x6ca3e8b8], 0x40000
xor esi, esi
mov ebx, 1
mov dword [0x6ca3e8bc], 0x200000
mov dword [0x6ca3e8c0], 7
jmp 0x6c99c130
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, esi
lock cmpxchg dword [0x6ca3e8c4], ebx
test eax, eax
jne 0x6c99c120
mov eax, dword [0x6ca3e8ac]
test eax, eax
jne 0x6c99c165
mov eax, dword [0x6ca3e8c0]
mov dword [0x6ca3e8ac], 0x58585858
mov dword [0x6ca3e898], 0
mov dword [0x6ca3e894], eax
xor eax, eax
xchg dword [0x6ca3e8c4], eax
lea eax, [ebp - 0x34]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x30]
sub esp, 4
mov dword [0x6ca3e8b0], eax
mov eax, dword [ebp - 0x18]
mov dword [0x6ca3e8b4], eax
jmp 0x6c99b99d
mov dword [0x6ca3e6f0], ebx
jmp 0x6c99bad3
mov eax, dword [0x6ca3e888]
mov dword [ebp - 0x50], 0x1f
test eax, eax
jne 0x6c99bf61
jmp 0x6c99b875
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x6c99b7fb
mov ecx, dword [0x6ca3e6f0]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x48], ecx
cmp ecx, eax
ja 0x6c99b87e
mov edx, dword [ebp - 0x38]
add edx, eax
mov dword [ebp - 0x4c], edx
cmp edx, eax
jbe 0x6c99b87e
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x44], edx
mov edx, eax
mov eax, dword [eax + 0xc]
cmp eax, edx
je 0x6c99c852
mov edx, dword [edx + 8]
cmp ecx, edx
ja 0x6c99c20f
mov dword [edx + 0xc], eax
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x44]
test edx, edx
je 0x6c99c27d
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x1c]
mov dword [ebp - 0x50], edx
add edx, 0x48
cmp dword [edx*4 + 0x6ca3e6ec], ecx
je 0x6c99c8c0
mov edx, dword [ebp - 0x44]
cmp dword [ebp - 0x48], edx
ja 0x6c99c243
cmp dword [edx + 0x10], ecx
je 0x6c99c989
mov dword [edx + 0x14], eax
test eax, eax
je 0x6c99c27d
mov ecx, dword [ebp - 0x48]
cmp ecx, eax
ja 0x6c99c27d
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x3c]
mov edx, dword [edx + 0x10]
test edx, edx
je 0x6c99c268
cmp ecx, edx
ja 0x6c99c268
mov dword [eax + 0x10], edx
mov dword [edx + 0x18], eax
mov edx, dword [ebp - 0x3c]
mov edx, dword [edx + 0x14]
cmp dword [ebp - 0x48], edx
ja 0x6c99c27d
test edx, edx
je 0x6c99c27d
mov dword [eax + 0x14], edx
mov dword [edx + 0x18], eax
mov eax, dword [ebp - 0x38]
cmp ebx, 0xf
ja 0x6c99c700
lea edi, [eax + ebx]
mov esi, dword [ebp - 0x3c]
mov eax, edi
or eax, 3
mov dword [esi + 4], eax
or dword [esi + edi + 4], 1
mov eax, dword [ebp - 0x3c]
mov esi, dword [0x6ca3e6e8]
add eax, 8
jne 0x6c99b8b3
jmp 0x6c99b875
mov eax, esi
mov dword [ebp - 0x44], ebx
jmp 0x6c99bb64
mov ebx, 1
shl eax, cl
shl ebx, cl
add ebx, ebx
mov edx, ebx
neg edx
or ebx, edx
and ebx, eax
mov ecx, ebx
neg ecx
and ebx, ecx
bsf eax, ebx
lea ebx, [eax*8 + 0x6ca3e704]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 8]
mov edx, dword [eax + 8]
cmp ebx, edx
je 0x6c99c6e0
cmp dword [0x6ca3e6f0], edx
ja 0x6c99c302
mov dword [ebx + 8], edx
mov dword [edx + 0xc], ebx
mov ecx, dword [ebp - 0x3c]
lea edx, [ecx*8]
mov ecx, dword [ebp - 0x38]
mov ebx, ecx
sub edx, ecx
or ebx, 3
mov dword [eax + 4], ebx
mov ebx, ecx
mov ecx, edx
or ecx, 1
add ebx, eax
mov dword [ebx + 4], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [eax + ecx*8], edx
test esi, esi
je 0x6c99c374
mov ecx, dword [0x6ca3e6f4]
shr esi, 3
mov dword [ebp - 0x3c], ecx
mov ecx, esi
lea esi, [esi*8 + 0x6ca3e704]
mov dword [ebp - 0x38], esi
mov esi, 1
shl esi, cl
mov ecx, esi
test esi, edi
jne 0x6c99c764
or ecx, edi
mov dword [0x6ca3e6e0], ecx
mov ecx, dword [ebp - 0x38]
mov esi, ecx
mov edi, dword [ebp - 0x3c]
mov dword [esi + 8], edi
mov dword [ecx + 0xc], edi
mov dword [edi + 8], ecx
mov dword [edi + 0xc], esi
mov dword [0x6ca3e6e8], edx
add eax, 8
mov dword [0x6ca3e6f4], ebx
jmp 0x6c99b8b3
mov eax, dword [ebp - 0x40]
mov edx, 0x6ca3e804
mov dword [0x6ca3e6f0], ebx
mov dword [0x6ca3e89c], ebx
mov dword [0x6ca3e8a0], eax
mov eax, dword [0x6ca3e8ac]
mov dword [0x6ca3e8a8], 1
mov dword [0x6ca3e700], eax
mov eax, 0x6ca3e704
mov dword [eax + 0xc], eax
mov dword [eax + 8], eax
add eax, 8
cmp edx, eax
jne 0x6c99c3c2
mov edx, dword [ebp - 0x40]
lea eax, [ebx + 8]
sub edx, 0x28
test al, 7
je 0x6c99c5c0
neg eax
and eax, 7
lea esi, [ebx + eax]
mov dword [ebp - 0x44], esi
mov esi, edx
sub esi, eax
mov dword [ebp - 0x3c], esi
mov eax, esi
mov esi, dword [ebp - 0x44]
mov dword [0x6ca3e6ec], eax
or eax, 1
mov dword [0x6ca3e6f8], esi
mov dword [esi + 4], eax
mov eax, dword [0x6ca3e8bc]
mov dword [ebx + edx + 4], 0x28
mov dword [0x6ca3e6fc], eax
jmp 0x6c99bed0
btr edi, ecx
mov dword [0x6ca3e6e0], edi
jmp 0x6c99ba38
mov eax, esi
shr eax, 8
cmp eax, 0xffff
ja 0x6c99c6b2
bsr eax, eax
mov edi, esi
lea ecx, [eax + 7]
mov ebx, 1
shr edi, cl
mov ecx, edi
and ecx, 1
lea ecx, [ecx + eax*2]
lea eax, [ecx*4 + 0x12c]
shl ebx, cl
mov dword [ebp - 0x40], eax
mov edi, dword [0x6ca3e6ec]
mov eax, dword [0x6ca3e6e4]
mov dword [edx + 0x1c], ecx
mov dword [edx + 0x14], 0
mov dword [edx + 0x10], 0
mov dword [ebp - 0x3c], edi
test eax, ebx
jne 0x6c99c641
mov edi, dword [ebp - 0x40]
or eax, ebx
mov dword [ecx*4 + 0x6ca3e80c], edx
mov dword [0x6ca3e6e4], eax
add edi, 0x6ca3e6e0
mov dword [edx + 0xc], edx
mov dword [edx + 0x18], edi
mov dword [edx + 8], edx
jmp 0x6c99bed0
lea esi, [edi + eax + 0x1f]
and esi, edx
cmp esi, edi
jbe 0x6c99b9bb
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
ja 0x6c99c568
lea eax, [edx + 8]
test al, 7
je 0x6c99c8e3
neg eax
mov edi, esi
and eax, 7
sub edi, eax
mov ebx, eax
lea eax, [edx + eax]
mov dword [ebp - 0x3c], edi
or ebx, 1
mov dword [ebp - 0x40], eax
add eax, 8
lea ecx, [edi - 0x10]
mov edi, dword [ebp - 0x40]
mov dword [edi], ebx
mov ebx, ecx
or ebx, 2
mov dword [edi + 4], ebx
mov ebx, ecx
mov ecx, edi
mov dword [edi + ebx + 4], 7
mov edi, dword [ebp - 0x3c]
mov dword [ecx + edi - 8], 0
cmp edx, dword [0x6ca3e6f0]
jae 0x6c99c546
mov dword [0x6ca3e6f0], edx
add esi, dword [0x6ca3e88c]
mov dword [0x6ca3e88c], esi
cmp esi, dword [0x6ca3e890]
jbe 0x6c99c560
mov dword [0x6ca3e890], esi
test eax, eax
jne 0x6c99b8b3
mov eax, dword [0x6ca3e8b4]
mov edx, eax
neg edx
jmp 0x6c99b9bb
movzx ecx, byte [ebp - 0x50]
mov eax, 0xfffffffe
shl eax, cl
and eax, dword [ebp - 0x44]
je 0x6c99b875
mov edx, eax
neg edx
and eax, edx
bsf eax, eax
mov eax, dword [eax*4 + 0x6ca3e80c]
test eax, eax
je 0x6c99b875
mov edx, dword [eax + 4]
mov ebx, dword [ebp - 0x48]
mov dword [ebp - 0x40], esi
xor edi, edi
mov esi, dword [ebp - 0x38]
jmp 0x6c99bfe5
mov dword [ebp - 0x3c], edx
mov eax, edx
mov dword [ebp - 0x44], ebx
jmp 0x6c99c3f4
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x4c]
mov ecx, ebx
shr ecx, 3
or eax, 3
mov dword [edi + 4], eax
mov eax, ebx
or eax, 1
mov dword [esi + 4], eax
mov dword [esi + ebx], ebx
cmp ecx, 0x1f
ja 0x6c99c7bc
mov edx, 1
mov ebx, dword [0x6ca3e6e0]
lea eax, [ecx*8 + 0x6ca3e704]
shl edx, cl
test ebx, edx
jne 0x6c99c8f8
or edx, ebx
mov dword [0x6ca3e6e0], edx
mov edx, eax
mov dword [eax + 8], esi
mov dword [edx + 0xc], esi
mov dword [esi + 8], edx
mov dword [esi + 0xc], eax
jmp 0x6c99c0d3
mov eax, dword [ebx + 8]
cmp eax, dword [0x6ca3e6f0]
cmovb eax, ebx
jmp 0x6c99bca5
mov ebx, dword [ecx*4 + 0x6ca3e80c]
mov edi, esi
cmp ecx, 0x1f
je 0x6c99c677
mov eax, ecx
mov ecx, 0x19
shr eax, 1
sub ecx, eax
shl edi, cl
jmp 0x6c99c677
mov eax, edi
add edi, edi
shr eax, 0x1f
add eax, 4
mov ecx, dword [ebx + eax*4]
test ecx, ecx
je 0x6c99c832
mov ebx, ecx
mov eax, dword [ebx + 4]
and eax, 0xfffffffc
cmp esi, eax
jne 0x6c99c660
mov ecx, dword [0x6ca3e6f0]
mov eax, dword [ebx + 8]
cmp ebx, ecx
jb 0x6c99bed0
cmp eax, ecx
jb 0x6c99bed0
mov dword [eax + 0xc], edx
mov dword [ebx + 8], edx
mov dword [edx + 8], eax
mov dword [edx + 0xc], ebx
mov dword [edx + 0x18], 0
jmp 0x6c99bed0
mov ebx, 0x80000000
mov dword [ebp - 0x40], 0x1a8
mov ecx, 0x1f
jmp 0x6c99c463
mov esi, dword [ebp - 0x4c]
mov edi, eax
mov dword [ebp - 0x40], esi
mov esi, dword [ebp - 0x38]
jmp 0x6c99bfe5
movzx ecx, byte [ebp - 0x3c]
mov edx, 1
shl edx, cl
not edx
and edi, edx
mov dword [0x6ca3e6e0], edi
jmp 0x6c99c302
mov edx, dword [ebp - 0x3c]
or eax, 3
mov dword [edx + 4], eax
mov edx, dword [ebp - 0x4c]
mov eax, ebx
or eax, 1
mov dword [edx + 4], eax
mov dword [edx + ebx], ebx
test esi, esi
je 0x6c99c751
shr esi, 3
mov eax, 1
mov edx, dword [0x6ca3e6f4]
mov ecx, esi
lea esi, [esi*8 + 0x6ca3e704]
shl eax, cl
test edi, eax
jne 0x6c99c991
or eax, edi
mov dword [0x6ca3e6e0], eax
mov eax, esi
mov dword [esi + 8], edx
mov dword [eax + 0xc], edx
mov dword [edx + 8], eax
mov dword [edx + 0xc], esi
mov eax, dword [ebp - 0x4c]
mov dword [0x6ca3e6e8], ebx
mov dword [0x6ca3e6f4], eax
jmp 0x6c99c29c
mov esi, dword [ebp - 0x38]
mov ecx, dword [esi + 8]
cmp ecx, dword [0x6ca3e6f0]
cmovb ecx, esi
jmp 0x6c99c365
mov edx, dword [edi + 0x14]
lea ecx, [edi + 0x14]
test edx, edx
je 0x6c99c99f
lea esi, [esi]
lea esi, [esi]
mov eax, edx
mov edx, dword [edx + 0x14]
mov esi, ecx
lea ecx, [eax + 0x14]
test edx, edx
jne 0x6c99c790
mov edx, dword [eax + 0x10]
lea ecx, [eax + 0x10]
test edx, edx
jne 0x6c99c790
cmp dword [ebp - 0x48], esi
ja 0x6c99c058
mov dword [esi], 0
jmp 0x6c99c058
mov eax, ebx
shr eax, 8
cmp eax, 0xffff
ja 0x6c99c975
bsr eax, eax
mov edx, ebx
lea ecx, [eax + 7]
shr edx, cl
and edx, 1
lea ecx, [edx + eax*2]
mov eax, 1
shl eax, cl
lea esi, [ecx*4 + 0x12c]
mov edx, eax
mov eax, dword [ebp - 0x4c]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov eax, dword [0x6ca3e6e4]
test eax, edx
jne 0x6c99c906
or eax, edx
add esi, 0x6ca3e6e0
mov dword [0x6ca3e6e4], eax
mov eax, dword [ebp - 0x4c]
mov dword [ecx*4 + 0x6ca3e80c], eax
mov dword [eax + 0x18], esi
mov dword [eax + 0xc], eax
mov dword [eax + 8], eax
jmp 0x6c99c0d3
lea ecx, [ebx + eax*4]
cmp dword [0x6ca3e6f0], ecx
ja 0x6c99bed0
mov dword [ebx + eax*4], edx
mov dword [edx + 0x18], ebx
mov dword [edx + 0xc], edx
mov dword [edx + 8], edx
jmp 0x6c99bed0
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x14]
lea ecx, [eax + 0x14]
test edx, edx
je 0x6c99c9f8
mov dword [ebp - 0x50], edi
lea esi, [esi]
lea esi, [esi]
mov eax, edx
mov edx, dword [edx + 0x14]
mov edi, ecx
lea ecx, [eax + 0x14]
test edx, edx
jne 0x6c99c870
mov edx, dword [eax + 0x10]
lea ecx, [eax + 0x10]
test edx, edx
jne 0x6c99c870
mov edx, edi
mov edi, dword [ebp - 0x50]
cmp dword [ebp - 0x48], edx
ja 0x6c99c20f
mov dword [edx], 0
jmp 0x6c99c20f
mov dword [edx*4 + 0x6ca3e6ec], eax
test eax, eax
jne 0x6c99c08a
mov eax, dword [ebp - 0x44]
btr eax, ecx
mov dword [0x6ca3e6e4], eax
jmp 0x6c99c0ba
mov dword [edx*4 + 0x6ca3e6ec], eax
test eax, eax
jne 0x6c99c247
mov eax, dword [ebp - 0x40]
movzx edx, byte [ebp - 0x50]
btr eax, edx
mov dword [0x6ca3e6e4], eax
jmp 0x6c99c27d
mov dword [ebp - 0x40], edx
mov edi, esi
mov dword [ebp - 0x3c], esi
jmp 0x6c99c511
mov dword [esi + 0x10], eax
jmp 0x6c99c086
mov edx, dword [eax + 8]
cmp dword [ebp - 0x48], edx
cmova edx, eax
jmp 0x6c99c61b
mov edx, dword [ecx*4 + 0x6ca3e80c]
mov esi, ebx
cmp ecx, 0x1f
je 0x6c99c93a
mov eax, ecx
mov ecx, 0x19
shr eax, 1
sub ecx, eax
shl esi, cl
jmp 0x6c99c93a
mov eax, esi
add esi, esi
shr eax, 0x1f
add eax, 4
mov ecx, dword [edx + eax*4]
test ecx, ecx
je 0x6c99ca0e
mov edx, ecx
mov eax, dword [edx + 4]
and eax, 0xfffffffc
cmp eax, ebx
jne 0x6c99c923
mov eax, dword [edx + 8]
mov esi, dword [ebp - 0x48]
cmp esi, eax
ja 0x6c99c0d3
cmp esi, edx
ja 0x6c99c0d3
mov esi, dword [ebp - 0x4c]
mov dword [eax + 0xc], esi
mov dword [edx + 8], esi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov dword [esi + 0x18], 0
jmp 0x6c99c0d3
mov esi, 0x1a8
mov edx, 0x80000000
mov ecx, 0x1f
jmp 0x6c99c7ec
mov dword [edx + 0x10], eax
jmp 0x6c99c243
mov eax, dword [esi + 8]
cmp dword [ebp - 0x48], eax
cmova eax, esi
jmp 0x6c99c745
mov edx, dword [edi + 0x10]
lea ecx, [edi + 0x10]
test edx, edx
jne 0x6c99c790
cmp dword [ebp - 0x40], 0
je 0x6c99c0ba
mov ecx, dword [edi + 0x1c]
lea eax, [ecx + 0x48]
cmp edi, dword [eax*4 + 0x6ca3e6ec]
je 0x6c99ccf4
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x48], eax
ja 0x6c99c0ba
cmp edi, dword [eax + 0x10]
je 0x6c99cd16
mov eax, dword [ebp - 0x40]
mov dword [eax + 0x14], 0
jmp 0x6c99c0ba
mov ebx, dword [ebp - 0x48]
jmp 0x6c99c003
mov edx, dword [eax + 0x10]
test edx, edx
je 0x6c99cb99
lea ecx, [eax + 0x10]
mov dword [ebp - 0x50], edi
jmp 0x6c99c870
lea ecx, [edx + eax*4]
cmp dword [ebp - 0x48], ecx
ja 0x6c99c0d3
mov esi, dword [ebp - 0x4c]
mov dword [edx + eax*4], esi
mov dword [esi + 0x18], edx
mov dword [esi + 0xc], esi
mov dword [esi + 8], esi
jmp 0x6c99c0d3
mov dword [ebp - 0x3c], ecx
mov eax, ecx
mov dword [ebp - 0x44], edx
jmp 0x6c99bea7
mov ecx, dword [0x6ca3e6ec]
add ecx, esi
mov esi, dword [ebp - 0x3c]
mov dword [0x6ca3e6ec], ecx
or ecx, 1
mov dword [0x6ca3e6f8], esi
mov dword [esi + 4], ecx
jmp 0x6c99b8b3
mov esi, dword [ebp - 0x38]
mov ecx, 0x1f
mov edx, esi
shr edx, 8
cmp edx, 0xffff
ja 0x6c99ca83
bsr edx, edx
lea ecx, [edx + 7]
add edx, edx
shr esi, cl
mov ecx, esi
and ecx, 1
add ecx, edx
mov esi, dword [ebp - 0x3c]
mov ebx, 1
mov edx, dword [0x6ca3e6e4]
shl ebx, cl
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
test edx, ebx
jne 0x6c99cbf9
or edx, ebx
mov dword [ecx*4 + 0x6ca3e80c], esi
mov dword [0x6ca3e6e4], edx
lea edx, [ecx*4 + 0x6ca3e80c]
mov dword [esi + 0x18], edx
mov dword [esi + 0xc], esi
mov dword [esi + 8], esi
jmp 0x6c99b8b3
mov ecx, dword [ebp - 0x38]
add ecx, dword [0x6ca3e6e8]
mov esi, dword [ebp - 0x3c]
mov edx, ecx
mov dword [0x6ca3e6e8], ecx
or edx, 1
mov dword [0x6ca3e6f4], esi
mov dword [esi + 4], edx
mov dword [esi + ecx], ecx
jmp 0x6c99b8b3
mov esi, dword [edi + 0x18]
mov dword [ebp - 0x40], esi
cmp edx, edi
je 0x6c99cc95
mov ecx, dword [edi + 8]
cmp ecx, dword [0x6ca3e6f0]
jb 0x6c99cb17
mov dword [ecx + 0xc], edx
mov dword [edx + 8], ecx
cmp dword [ebp - 0x40], 0
je 0x6c99bddd
mov ecx, dword [edi + 0x1c]
lea ebx, [ecx + 0x48]
cmp dword [ebx*4 + 0x6ca3e6ec], edi
je 0x6c99cd3e
mov esi, dword [ebp - 0x40]
cmp esi, dword [0x6ca3e6f0]
jb 0x6c99cb4e
cmp dword [esi + 0x10], edi
je 0x6c99cd5f
mov esi, dword [ebp - 0x40]
mov dword [esi + 0x14], edx
test edx, edx
je 0x6c99bddd
mov ebx, dword [0x6ca3e6f0]
cmp edx, ebx
jb 0x6c99bddd
mov esi, dword [ebp - 0x40]
mov ecx, dword [edi + 0x10]
mov dword [edx + 0x18], esi
cmp ebx, ecx
ja 0x6c99cb7b
test ecx, ecx
je 0x6c99cb7b
mov dword [edx + 0x10], ecx
mov dword [ecx + 0x18], edx
mov ecx, dword [edi + 0x14]
cmp ebx, ecx
ja 0x6c99bddd
test ecx, ecx
je 0x6c99bddd
mov dword [edx + 0x14], ecx
mov dword [ecx + 0x18], edx
jmp 0x6c99bddd
cmp dword [ebp - 0x44], 0
je 0x6c99c27d
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + 0x1c]
mov dword [ebp - 0x50], eax
add eax, 0x48
cmp edx, dword [eax*4 + 0x6ca3e6ec]
je 0x6c99cd2e
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x48], eax
ja 0x6c99c27d
mov edx, dword [ebp - 0x3c]
cmp edx, dword [eax + 0x10]
je 0x6c99cd22
mov eax, dword [ebp - 0x44]
mov dword [eax + 0x14], 0
jmp 0x6c99c27d
mov ecx, dword [edx + 8]
cmp ecx, dword [0x6ca3e6f0]
jae 0x6c99be33
mov ecx, edx
jmp 0x6c99be33
mov edx, dword [ecx*4 + 0x6ca3e80c]
cmp ecx, 0x1f
je 0x6c99cced
shr ecx, 1
mov ebx, 0x19
sub ebx, ecx
mov ecx, ebx
mov ebx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
shl ebx, cl
jmp 0x6c99cc31
mov ecx, ebx
add ebx, ebx
shr ecx, 0x1f
add ecx, 4
mov edi, dword [edx + ecx*4]
test edi, edi
je 0x6c99cc75
mov edx, edi
mov ecx, dword [edx + 4]
and ecx, 0xfffffffc
cmp dword [ebp - 0x38], ecx
jne 0x6c99cc1e
mov ebx, dword [0x6ca3e6f0]
mov ecx, dword [edx + 8]
cmp edx, ebx
jb 0x6c99b8b3
cmp ecx, ebx
jb 0x6c99b8b3
mov dword [ecx + 0xc], esi
mov dword [edx + 8], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
mov dword [esi + 0x18], 0
jmp 0x6c99b8b3
mov ecx, dword [ebp - 0x38]
jmp 0x6c99bf61
lea ebx, [edx + ecx*4]
cmp dword [0x6ca3e6f0], ebx
ja 0x6c99b8b3
mov dword [edx + ecx*4], esi
mov dword [esi + 0x18], edx
mov dword [esi + 0xc], esi
mov dword [esi + 8], esi
jmp 0x6c99b8b3
mov edx, dword [edi + 0x14]
test edx, edx
je 0x6c99cd80
lea ecx, [edi + 0x14]
mov esi, dword [ebp - 0x3c]
mov ebx, edx
mov edx, ebx
mov dword [ebp - 0x44], ecx
mov ecx, dword [edx + 0x14]
lea ebx, [edx + 0x14]
test ecx, ecx
je 0x6c99ccc6
mov edx, ecx
mov dword [ebp - 0x44], ebx
mov ecx, dword [edx + 0x14]
lea ebx, [edx + 0x14]
test ecx, ecx
jne 0x6c99ccb7
mov ebx, dword [edx + 0x10]
lea ecx, [edx + 0x10]
test ebx, ebx
jne 0x6c99cca8
mov dword [ebp - 0x3c], esi
mov esi, dword [ebp - 0x44]
cmp dword [0x6ca3e6f0], esi
ja 0x6c99cb17
mov dword [esi], 0
jmp 0x6c99cb17
xor ecx, ecx
jmp 0x6c99cc14
mov dword [eax*4 + 0x6ca3e6ec], 0
jmp 0x6c99c8b0
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6ca3e6e0], edx
jmp 0x6c99bddd
mov dword [eax + 0x10], 0
jmp 0x6c99c0ba
mov dword [eax + 0x10], 0
jmp 0x6c99c27d
mov dword [eax*4 + 0x6ca3e6ec], 0
jmp 0x6c99c8cf
mov dword [ebx*4 + 0x6ca3e6ec], edx
test edx, edx
jne 0x6c99cb56
mov edx, 0xfffffffe
rol edx, cl
and dword [0x6ca3e6e4], edx
jmp 0x6c99bddd
mov dword [esi + 0x10], edx
jmp 0x6c99cb4e
cmp ebx, dword [0x6ca3e6f0]
jb 0x6c99bddd
cmp ecx, edx
je 0x6c99bdd7
jmp 0x6c99bdcf
mov edx, dword [edi + 0x10]
test edx, edx
je 0x6c99cb17
lea ecx, [edi + 0x10]
jmp 0x6c99cca3
jmp 0x6ca11937
mov eax, dword [pe_dos_header]
ud2