Function at 0x1006ece6
Capabilities:
Suspend thread

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov dword [ebp - 0x1c], edx
mov edi, ecx
mov eax, 0xde6a2dd8
cmp eax, 0xfb8c7e2b
jle 0x1006eda2
cmp eax, 0x3862224d
jle 0x1006ee64
cmp eax, 0x596dc748
jg 0x1006eef7
cmp eax, 0x41ae0af2
jle 0x1006f02a
cmp eax, 0x4f6ef513
jg 0x1006f2cf
cmp eax, 0x41ae0af3
je 0x1006f3d3
cmp eax, 0x44262d3f
jne 0x1006ecf9
mov eax, dword [ebp - 0x10]
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
xor ecx, eax
test ecx, eax
sete al
cmp dword [0x10099058], 0xa
setl cl
mov edx, ecx
xor dl, al
or cl, al
xor cl, 1
or cl, dl
mov ch, cl
xor ch, dl
test cl, cl
mov eax, 0xbe23063a
mov ebx, 0xe0742a74
cmovne eax, ebx
test dl, dl
cmove eax, ebx
test ch, ch
mov ecx, 0xbe23063a
cmove eax, ecx
jmp 0x1006ecf9
cmp eax, 0xc968e695
jg 0x1006eeb6
cmp eax, 0xb0ee0761
jle 0x1006ef38
cmp eax, 0xbe230639
jle 0x1006f0ac
cmp eax, 0xc3636c72
jg 0x1006f2f8
cmp eax, 0xbe23063a
je 0x1006f3dd
cmp eax, 0xc1b9bef8
jne 0x1006ecf9
xor eax, eax
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, edi
call fcn.10075871
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0xbb9e3f3c
mov edx, eax
and edx, 0x4461c0c3
or edx, ecx
xor edx, 0x4461c0c2
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
sete al
cmp dword [0x10099058], 0xa
setl cl
xor al, cl
mov edx, eax
not dl
mov ebx, 0x32188bb8
mov esi, edi
mov edi, 0xc968e696
cmovne ebx, edi
test dl, cl
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
mov edi, esi
test dl, cl
cmove eax, ebx
xor ecx, ecx
cmp dword [esi], ecx
setne byte [ebp - 0x11]
jmp 0x1006ecf9
cmp eax, 0x24b9b4de
jle 0x1006ef7c
cmp eax, 0x3070548c
jle 0x1006f0d7
cmp eax, 0x346e0cba
jg 0x1006f35e
cmp eax, 0x3070548d
je 0x1006f444
cmp eax, 0x32188bb8
jne 0x1006ecf9
xor eax, eax
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, edi
call fcn.10075871
mov eax, 0xc1b9bef8
jmp 0x1006ecf9
cmp eax, 0xdb2d4141
jle 0x1006eff4
cmp eax, 0xe0742a73
jle 0x1006f109
cmp eax, 0xf396a962
jg 0x1006f37e
cmp eax, 0xe0742a74
je 0x1006f44e
cmp eax, 0xe7fca8f6
jne 0x1006ecf9
mov eax, 0xee77484
jmp 0x1006ecf9
cmp eax, 0x674d5102
jle 0x1006f186
cmp eax, 0x741b38fe
jg 0x1006f39e
cmp eax, 0x674d5103
je 0x1006f458
cmp eax, 0x70406ee0
jne 0x1006ecf9
mov eax, dword [ebp - 0x10]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
mov eax, 0xc3636c73
jmp 0x1006ecf9
cmp eax, 0x9ccc52be
jg 0x1006f1b1
cmp eax, 0x907c9afd
jle 0x1006f3be
cmp eax, 0x907c9afe
je 0x1006f4bf
cmp eax, 0x93f16a8c
jne 0x1006ecf9
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x28]
mov eax, 0xa54ba127
mov ecx, 0x741b38ff
cmovb eax, ecx
jmp 0x1006ecf9
cmp eax, 0x115c833a
jg 0x1006f239
cmp eax, 0xfb8c7e2c
je 0x1006f508
cmp eax, 0xff455080
je 0x1006f560
cmp eax, 0xee77484
jne 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx - 1]
imul eax, ecx
and al, 1
cmp dword [0x10099058], 0xa
setge cl
setl dl
and dl, al
mov ch, al
inc ch
and ch, cl
or ch, dl
or al, cl
mov cl, al
xor cl, ch
mov edx, 0x3070548d
mov ebx, 0xe7fca8f6
cmovne edx, ebx
test al, al
mov eax, 0x3070548d
cmovne eax, edx
test ch, ch
cmove eax, edx
jmp 0x1006ecf9
cmp eax, 0xd2ad11b8
jg 0x1006f264
cmp eax, 0xc968e696
je 0x1006f56a
cmp eax, 0xcc0a57aa
je 0x1006f580
cmp eax, 0xce60d637
jne 0x1006ecf9
mov eax, 0xd55ff80a
jmp 0x1006ecf9
cmp eax, 0x3862224e
je 0x1006f5e9
cmp eax, 0x3c066545
je 0x1006f5f3
cmp eax, 0x3d44ac23
jne 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
not eax
or eax, ecx
xor eax, 0xffffffff
sete dl
setne ah
cmp dword [0x10099058], 0xa
setge ch
setl al
mov cl, ch
xor ch, ah
and ah, al
and cl, dl
or cl, ah
or al, dl
xor al, 1
or al, ch
mov edx, eax
xor dl, cl
mov edx, 0x139398b1
mov esi, 0xf396a963
cmovne edx, esi
test al, al
mov eax, 0x139398b1
jmp 0x1006f17e
cmp eax, 0xb0ee0762
je 0x1006f63e
cmp eax, 0xba8ff6d2
je 0x1006f6b0
cmp eax, 0xbda6df24
jne 0x1006ecf9
mov eax, 0x115c833b
jmp 0x1006ecf9
cmp eax, 0x24b9b4df
je 0x1006f6ba
cmp eax, 0x290999f2
je 0x1006f715
cmp eax, 0x2e58bd37
jne 0x1006ecf9
mov eax, 0x907c9afe
mov dword [ebp - 0x18], 0
jmp 0x1006ecf9
cmp eax, 0xdb2d4142
je 0x1006f737
cmp eax, 0xdd997b24
je 0x1006f741
cmp eax, 0xde6a2dd8
jne 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
not eax
or eax, ecx
xor eax, 0xffffffff
setne al
sete dl
cmp dword [0x10099058], 0xa
setl cl
setge ah
and dl, ah
and cl, al
or cl, dl
or ah, al
mov al, ah
xor al, cl
mov edx, 0x4f6ef514
mov esi, 0x24b9b4df
cmovne edx, esi
test ah, ah
mov eax, 0x4f6ef514
cmovne eax, edx
jmp 0x1006f6a6
cmp eax, 0x596dc749
je 0x1006f78a
cmp eax, 0x5e1a7012
je 0x1006f79a
cmp eax, 0x6315d60e
jne 0x1006ecf9
mov eax, 0xfb8c7e2c
jmp 0x1006ecf9
cmp eax, 0x9ccc52bf
je 0x1006f7f8
cmp eax, 0xa1dae860
je 0x1006f80d
cmp eax, 0xa54ba127
jne 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x3e7eb611
mov edx, eax
and edx, 0xc18149ee
or edx, ecx
xor edx, 0xc18149ef
and eax, 0xfffffffe
or eax, edx
xor eax, 0xffffffff
sete al
setne cl
cmp dword [0x10099058], 0xa
setl dl
setge ch
and al, ch
or ch, cl
and dl, cl
or dl, al
mov cl, ch
xor cl, dl
test dl, dl
mov eax, 0xe7fca8f6
mov edx, 0xee77484
cmovne eax, edx
test ch, ch
mov ebx, 0xe7fca8f6
jmp 0x1006f6a3
cmp eax, 0x115c833b
je 0x1006f825
cmp eax, 0x138cde6e
je 0x1006f88d
cmp eax, 0x139398b1
jne 0x1006ecf9
mov eax, 0x4f6ef514
jmp 0x1006ecf9
cmp eax, 0xd2ad11b9
je 0x1006f8f0
cmp eax, 0xd430a707
je 0x1006f8fa
cmp eax, 0xd55ff80a
jne 0x1006ecf9
mov ecx, dword [0x10099054]
mov eax, 0xcd2ba4eb
sub eax, ecx
imul eax, ecx
and al, 1
cmp dword [0x10099058], 0xa
setge cl
setl dl
xor dl, al
or cl, al
mov ch, dl
xor ch, cl
test cl, cl
mov eax, 0xd2ad11b9
mov ebx, 0xce60d637
cmovne eax, ebx
test dl, dl
cmovne eax, ebx
test ch, ch
mov ecx, 0xd2ad11b9
cmovne eax, ecx
jmp 0x1006ecf9
cmp eax, 0x4f6ef514
je 0x1006f904
cmp eax, 0x5631e258
jne 0x1006ecf9
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
mov eax, 0x93f16a8c
jmp 0x1006ecf9
cmp eax, 0xc3636c73
je 0x1006f980
cmp eax, 0xc926fb14
jne 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
xor ecx, eax
test ecx, eax
setne al
cmp dword [0x10099058], 0xa
setge cl
mov edx, ecx
or dl, al
xor cl, al
mov ch, dl
xor ch, cl
test cl, cl
mov eax, 0xdb2d4142
mov esi, 0x6315d60e
cmovne eax, esi
test dl, dl
mov edx, 0xdb2d4142
jmp 0x1006f4b2
cmp eax, 0x346e0cbb
je 0x1006f99d
cmp eax, 0x36d4ed02
jne 0x1006ecf9
mov eax, 0x290999f2
jmp 0x1006ecf9
cmp eax, 0xf396a963
je 0x1006f9b0
cmp eax, 0xf5a511d4
jne 0x1006ecf9
mov eax, 0x674d5103
jmp 0x1006ecf9
cmp eax, 0x741b38ff
je 0x1006f9ba
cmp eax, 0x7aed78e5
jne 0x1006ecf9
mov eax, 0x2e58bd37
jmp 0x1006ecf9
cmp eax, 0x8683e266
jne 0x1006fa1c
mov eax, 0xdd997b24
jmp 0x1006ecf9
mov eax, 0xb0ee0762
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x7dacfd15
mov edx, eax
and edx, 0x825302ea
or edx, ecx
xor edx, 0x825302eb
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
setne al
cmp dword [0x10099058], 0xa
setge cl
mov edx, ecx
or dl, al
xor cl, al
mov ch, dl
xor ch, cl
test cl, cl
mov eax, 0xe0742a74
mov ebx, 0x8683e266
cmovne eax, ebx
test dl, dl
mov edx, 0xe0742a74
cmovne eax, edx
test ch, ch
cmove eax, ebx
jmp 0x1006ecf9
mov eax, 0xd430a707
jmp 0x1006ecf9
mov eax, 0xbe23063a
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x13ee14c8
mov edx, eax
and edx, 0xec11eb37
or edx, ecx
xor edx, 0xec11eb36
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
setne al
cmp dword [0x10099058], 0xa
setge cl
mov edx, ecx
or dl, al
xor cl, al
mov ch, cl
xor ch, dl
test cl, cl
mov eax, 0x32188bb8
mov esi, 0xc1b9bef8
cmovne eax, esi
test dl, dl
mov edx, 0x32188bb8
cmovne eax, edx
test ch, ch
cmove eax, esi
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x10099058], 0xa
setge dl
xor cl, dl
or al, dl
mov edx, ecx
xor dl, al
not dl
test dl, 1
mov edx, 0xd55ff80a
mov ebx, 0xce60d637
cmovne edx, ebx
test al, 1
mov eax, 0xd55ff80a
cmovne eax, edx
test cl, cl
cmovne eax, edx
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete ah
cmp dword [0x10099058], 0xa
setge ch
setl al
mov cl, ch
xor ch, dl
and dl, al
and cl, ah
or cl, dl
or al, ah
xor al, 1
or al, ch
mov edx, eax
xor dl, cl
test al, 1
mov eax, 0x138cde6e
mov esi, 0xff455080
cmovne eax, esi
test cl, cl
cmove eax, esi
not dl
test dl, 1
mov ecx, 0x138cde6e
cmovne eax, ecx
jmp 0x1006ecf9
mov eax, 0x138cde6e
jmp 0x1006ecf9
cmp byte [ebp - 0x11], 0
mov eax, 0x86610dea
mov ecx, 0x7aed78e5
cmovne eax, ecx
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x19ab274e
mov edx, eax
and edx, 0xe654d8b1
or edx, ecx
xor edx, 0xe654d8b0
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
sete cl
cmp dword [0x10099058], 0xa
setl dl
xor cl, dl
mov ch, cl
mov eax, 0x5e1a7012
mov esi, 0x36d4ed02
cmovne eax, esi
not ch
test ch, dl
mov edx, 0x5e1a7012
cmove eax, edx
cmovne eax, esi
mov edx, dword [edi]
mov dword [ebp - 0x2c], edx
test cl, cl
cmovne eax, esi
jmp 0x1006ecf9
mov eax, 0x596dc749
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx - 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x10099058], 0xa
setge dl
setl ch
xor ch, cl
or dl, al
mov cl, dl
xor cl, ch
test dl, 1
mov eax, 0x115c833b
mov edx, 0xbda6df24
cmovne eax, edx
test ch, ch
cmove eax, edx
test cl, 1
mov ecx, 0x115c833b
cmove eax, ecx
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0xc44ccd63
mov edx, eax
and edx, 0x3bb3329c
or edx, ecx
xor edx, 0x3bb3329d
and eax, 0xfffffffe
or eax, edx
xor eax, 0xe23d454f
xor eax, 0x1dc2bab0
sete al
setne cl
cmp dword [0x10099058], 0xa
setl dl
setge ch
or ch, cl
xor dl, al
mov cl, dl
xor cl, ch
test dl, dl
mov eax, 0x41ae0af3
mov edx, 0xba8ff6d2
cmovne eax, edx
test ch, ch
mov ebx, 0x41ae0af3
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x1006ecf9
mov eax, 0xcc0a57aa
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
xor ecx, eax
test ecx, eax
sete al
cmp dword [0x10099058], 0xa
setl dl
setge cl
xor cl, al
mov ah, dl
xor ah, al
or dl, al
xor dl, 1
or dl, ah
mov eax, ecx
xor al, dl
mov ebx, 0xf396a963
mov eax, 0x3d44ac23
cmovne ebx, eax
test dl, dl
cmovne eax, ebx
test cl, cl
cmovne eax, ebx
jmp 0x1006ecf9
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x18]
push dword [eax + ecx*4]
push 0
push 0x5a
call dword [sym.imp.KERNEL32.dll_OpenThread]
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov eax, 0xa1dae860
jmp 0x1006ecf9
mov eax, 0xc926fb14
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx - 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x10099058], 0xa
setge dl
xor cl, dl
or al, dl
mov edx, ecx
xor dl, al
test al, 1
mov eax, 0xc926fb14
mov esi, 0xdb2d4142
cmovne eax, esi
test cl, cl
cmovne eax, esi
not dl
test dl, 1
mov ecx, 0xc926fb14
cmove eax, ecx
jmp 0x1006ecf9
mov eax, 0x346e0cbb
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x18], ecx
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
not eax
or eax, ecx
cmp eax, 0xffffffff
sete al
cmp dword [0x10099058], 0xa
setl cl
mov edx, ecx
xor dl, al
or cl, al
xor cl, 1
or cl, dl
mov eax, ecx
xor al, dl
mov ebx, 0xb0ee0762
mov eax, 0x41ae0af3
cmovne ebx, eax
test cl, cl
mov eax, 0xb0ee0762
cmovne eax, ebx
test dl, dl
cmove eax, ebx
jmp 0x1006ecf9
mov eax, dword [ebp - 0x10]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x44262d3f
jmp 0x1006ecf9
mov eax, dword [ebp - 0x10]
cmp dword [eax], 0
mov eax, 0x70406ee0
mov ecx, 0x44262d3f
cmove eax, ecx
jmp 0x1006ecf9
mov eax, dword [0x10099054]
lea ecx, [eax + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xfffffffe
and eax, 1
or eax, edx
xor ecx, eax
test ecx, eax
setne al
sete cl
cmp dword [0x10099058], 0xa
setl dl
setge ah
and cl, ah
and dl, al
or dl, cl
or ah, al
mov cl, ah
xor cl, dl
test ah, ah
mov eax, 0x3862224e
mov esi, 0xbda6df24
cmovne eax, esi
test dl, dl
mov edx, dword [ebp - 0x18]
lea edx, [edx + 1]
cmove eax, esi
mov dword [ebp - 0x30], edx
test cl, cl
mov ecx, 0x3862224e
cmove eax, ecx
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xa5ba7118
and eax, 0x5a458ee7
or eax, edx
xor eax, 0xa5ba7119
or eax, ecx
cmp eax, 0xffffffff
setne al
cmp dword [0x10099058], 0xa
setge cl
mov edx, ecx
xor dl, al
or cl, al
mov ch, cl
xor ch, dl
test cl, cl
mov eax, 0x3c066545
mov esi, 0xff455080
cmovne eax, esi
test dl, dl
cmove eax, esi
test ch, ch
mov ecx, 0x3c066545
cmove eax, ecx
jmp 0x1006ecf9
mov eax, 0x346e0cbb
jmp 0x1006ecf9
mov eax, 0x86610dea
jmp 0x1006ecf9
push eax
mov ecx, esp
mov eax, dword [0x10099054]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
not eax
and edx, 0xb32777f1
mov ebx, eax
and ebx, 0x4cd8880e
or ebx, edx
xor ebx, 0x4cd8880f
and eax, 0xfffffffe
or eax, ebx
xor eax, 0x49654d1a
xor eax, 0xb69ab2e5
sete al
setne dl
cmp dword [0x10099058], 0xa
setl ah
setge dh
and al, dh
or dh, dl
and ah, dl
or ah, al
mov al, dh
xor al, ah
mov ebx, 0xf5a511d4
mov esi, 0x24b9b4df
cmovne ebx, esi
test ah, ah
mov eax, ebx
mov esi, 0xf5a511d4
cmovne eax, esi
mov dword [ebp - 0x10], ecx
test dh, dh
cmovne eax, ebx
jmp 0x1006ecf9
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
push dword [ebp + 8]
call fcn.1007884c
add esp, 4
mov eax, 0x9ccc52bf
jmp 0x1006ecf9
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], edi
mov eax, 0x5631e258
jmp 0x1006ecf9
mov eax, 0x3d44ac23
jmp 0x1006ecf9
mov ecx, dword [0x10099054]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xc2759c02
and eax, 0x3d8a63fd
or eax, edx
xor eax, 0xc2759c03
or eax, ecx
cmp eax, 0xffffffff
sete al
cmp dword [0x10099058], 0xa
setl cl
xor al, cl
mov edx, eax
mov ebx, 0x5e1a7012
mov esi, 0xcc0a57aa
cmovne ebx, esi
not dl
test dl, cl
cmovne ebx, esi
test al, al
mov eax, ebx
cmovne eax, esi
test dl, cl
mov ecx, dword [ebp - 0x10]
cmove eax, ebx
jmp 0x1006ecf9
cmp eax, 0x86610dea
jne 0x1006ecf9
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret