Function at 0x10019de0
Capabilities:
Encode data using base64
Encrypt data using speck
Identify system language via api
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009aa60
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x14a0
call fcn.1008eca0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x10d], 3
mov dword [ebp - 0x4c], 0x18955d40
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [ebp - 0xb08], ecx
mov dword [ebp - 0x78], eax
xor edx, edx
mov dword [ebp - 0x60], 0xa4b79040
mov dword [ebp - 0x5c], edx
movsx eax, word [0x100c308c]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x7c], 0x1c1e6b30
mov ecx, 0x32af
mov word [ebp - 0x34], cx
mov dx, word [0x100c30b0]
mov word [ebp - 0x30], dx
movsx ax, byte [str.NDisablePerfBackoff]
mov word [ebp - 0x28], ax
mov ecx, 0x4ea9
mov word [ebp - 0x18], cx
mov edx, dword [0x100c30e8]
mov eax, dword [0x100c30ec]
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
xor ecx, ecx
mov dword [ebp - 0x48], 0x44d
mov dword [ebp - 0x44], ecx
mov eax, dword [0x100c30f8]
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
mov dx, word [0x100c30fc]
mov byte [ebp - 0x12], dl
movsx eax, word [0x100c3118]
cdq
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
mov ax, word [0x100c30f8]
mov word [ebp - 0x1c], ax
mov ecx, dword [0x100c3080]
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x58], 0x61
mov dx, word [0x100c30fc]
mov word [ebp - 0x20], dx
mov byte [ebp - 0x13], 0x16
mov eax, 0xffff9024
mov word [ebp - 0x2c], ax
movsx eax, word [0x100c30fc]
cdq
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
mov eax, 0x6aaa
mov word [ebp - 0x24], ax
mov byte [ebp - 0x11], 0xc6
mov cl, byte [0x100c3090]
mov byte [ebp - 0x10e], cl
xor edx, edx
mov dword [ebp - 0xd00], 0x63b7
mov dword [ebp - 0xcfc], edx
mov eax, 0x356ff
mov dword [ebp - 0xd08], 0x2afdfc9
mov dword [ebp - 0xd04], eax
mov dword [ebp - 0xb0c], 0x373449f1
movzx eax, byte [0x100c3063]
cdq
mov dword [ebp - 0xd10], eax
mov dword [ebp - 0xd0c], edx
xor ecx, ecx
mov dword [ebp - 0xd18], 0x42a5aa04
mov dword [ebp - 0xd14], ecx
xor edx, edx
mov dword [ebp - 0xd20], 0xaf
mov dword [ebp - 0xd1c], edx
mov dword [ebp - 0xb10], 0x14870fa9
movzx ax, byte [0x100c303b]
mov word [ebp - 0x5e8], ax
mov ecx, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov dword [ebp - 0xb14], edx
mov dword [ebp - 0xb18], ecx
movzx eax, byte [0x100c3063]
mov dword [ebp - 0xb1c], eax
mov ecx, dword [0x100c30d0]
mov edx, dword [0x100c30d4]
mov dword [ebp - 0xd28], ecx
mov dword [ebp - 0xd24], edx
mov dword [ebp - 0xb20], 0xee61c7d
xor eax, eax
mov dword [ebp - 0xd30], 0x34c4
mov dword [ebp - 0xd2c], eax
mov ecx, 9
mov word [ebp - 0x5ec], cx
mov dword [ebp - 0xb24], 0x2dd8
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0xb28], eax
mov dword [ebp - 0xb2c], edx
push 0
push 1
call fcn.1004e550
add esp, 8
mov byte [0x100c3062], al
movzx ecx, byte [0x100c3062]
test ecx, ecx
jl 0x1001a050
mov dword [ebp - 0x150], 1
jmp 0x1001a05a
mov dword [ebp - 0x150], 0
movzx edx, byte [0x100c3062]
cmp edx, 0x1a
jl 0x1001a072
mov dword [ebp - 0x154], 1
jmp 0x1001a07c
mov dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x150]
cmp eax, dword [ebp - 0x154]
jne 0x1001a130
mov dword [ebp - 0x11c], 0x33f
jmp 0x1001a0a9
mov ecx, dword [ebp - 0x11c]
sub ecx, 1
mov dword [ebp - 0x11c], ecx
cmp dword [ebp - 0x11c], 0
jle 0x1001a12b
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
sub edx, 0x42626e9c
sbb eax, 0x7ed9a
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], eax
movsx cx, byte [0x100c3027]
mov word [0x100c3090], cx
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], eax
movsx ecx, byte [0x100c3027]
imul edx, ecx, 0x37
mov dword [0x100c310c], edx
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
imul edx, dword [ebp - 0x38], 0x44c
xor eax, eax
mov dword [0x100c30a8], edx
mov dword [0x100c30ac], eax
mov cx, word [ebp - 0x24]
add cx, 1
mov word [ebp - 0x24], cx
jmp 0x1001a09a
jmp 0x1001a2ae
movzx eax, word [0x100c30e0]
cdq
push edx
push eax
mov edx, dword [ebp - 0x70]
push edx
mov eax, dword [ebp - 0x74]
push eax
call fcn.1008eb70
mov dword [ebp - 0x9b4], eax
mov dword [ebp - 0x9b0], edx
mov ecx, dword [ebp - 0x9b4]
or ecx, dword [ebp - 0x9b0]
jne 0x1001a16d
mov dword [ebp - 0x160], 1
jmp 0x1001a177
mov dword [ebp - 0x160], 0
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x9bc], edx
mov dword [ebp - 0x9b8], eax
mov ecx, dword [ebp - 0x9bc]
or ecx, dword [ebp - 0x9b8]
jne 0x1001a1a3
mov dword [ebp - 0x158], 1
jmp 0x1001a1ad
mov dword [ebp - 0x158], 0
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
mov dword [ebp - 0x9c4], edx
mov dword [ebp - 0x9c0], eax
mov ecx, dword [ebp - 0x9c4]
or ecx, dword [ebp - 0x9c0]
jne 0x1001a1de
mov dword [ebp - 0x15c], 1
jmp 0x1001a1e8
mov dword [ebp - 0x15c], 0
mov edx, dword [ebp - 0x158]
imul edx, dword [ebp - 0x15c]
mov eax, edx
imul eax, dword [ebp - 0x160]
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movsx eax, word [0x100c3090]
add eax, 0xe7
mov dword [0x100c3108], eax
movsx ecx, word [0x100c308c]
test ecx, ecx
jne 0x1001a235
xor edx, edx
mov dword [ebp - 0x5e4], 1
mov dword [ebp - 0x5e0], edx
jmp 0x1001a240
xorps xmm0, xmm0
movlpd qword [ebp - 0x5e4], xmm0
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
add eax, dword [ebp - 0x5e4]
adc ecx, dword [ebp - 0x5e0]
not eax
not ecx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], ecx
movsx edx, word [ebp - 0x24]
imul eax, edx, 0x8787
movzx ecx, byte [0x100c3063]
add ecx, eax
mov byte [0x100c3063], cl
movzx eax, byte [0x100c3063]
movsx edx, byte [0x100c3027]
imul ecx, edx, 0
xor eax, ecx
cdq
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xb30], eax
add edx, 0x4567
mov byte [ebp - 0x12], dl
mov ecx, dword [0x100c3b38]
mov dword [ebp - 0x120], ecx
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
mov dword [ebp - 0x9cc], eax
mov dword [ebp - 0x9c8], edx
mov dword [ebp - 0x9d4], ecx
mov dword [ebp - 0x9d0], esi
mov edx, dword [ebp - 0x9c8]
cmp edx, dword [ebp - 0x9d0]
jb 0x1001a30c
ja 0x1001a300
mov eax, dword [ebp - 0x9cc]
cmp eax, dword [ebp - 0x9d4]
jbe 0x1001a30c
mov dword [ebp - 0x164], 1
jmp 0x1001a316
mov dword [ebp - 0x164], 0
movsx ecx, word [ebp - 0x24]
cmp ecx, dword [ebp - 0x164]
jge 0x1001a336
xor edx, edx
mov dword [ebp - 0x44c], 1
mov dword [ebp - 0x448], edx
jmp 0x1001a341
xorps xmm0, xmm0
movlpd qword [ebp - 0x44c], xmm0
mov eax, dword [0x100c310c]
xor ecx, ecx
sub eax, 0x57a3e106
sbb ecx, 0x42226
mov edx, dword [ebp - 0x44c]
sub edx, eax
mov eax, dword [ebp - 0x448]
sbb eax, ecx
mov dword [ebp - 0x9dc], edx
mov dword [ebp - 0x9d8], eax
mov ecx, dword [ebp - 0x9dc]
or ecx, dword [ebp - 0x9d8]
jne 0x1001a45b
mov edx, dword [ebp - 0x74]
or edx, dword [ebp - 0x70]
je 0x1001a45b
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0xb34], ecx
mov byte [ebp - 0x13], al
mov byte [0x100c3027], 8
movzx edx, word [0x100c30e0]
test edx, edx
jne 0x1001a3bf
mov dword [ebp - 0x168], 1
jmp 0x1001a3c9
mov dword [ebp - 0x168], 0
movsx eax, word [ebp - 0x24]
test eax, eax
jne 0x1001a3dd
mov dword [ebp - 0x16c], 1
jmp 0x1001a3e7
mov dword [ebp - 0x16c], 0
movsx ecx, word [0x100c308c]
add ecx, dword [ebp - 0x168]
mov edx, 0x5aaeb146
sub edx, dword [ebp - 0x16c]
add ecx, edx
jne 0x1001a411
mov eax, 1
mov word [ebp - 0x9c], ax
jmp 0x1001a41a
xor ecx, ecx
mov word [ebp - 0x9c], cx
mov dx, word [ebp - 0x9c]
mov word [ebp - 0x28], dx
movzx eax, byte [0x100c303b]
movzx ecx, byte [0x100c3063]
add eax, ecx
mov byte [0x100c303b], al
movsx edx, word [0x100c3090]
movsx eax, byte [0x100c3027]
add edx, eax
movsx ecx, word [0x100c3090]
imul ecx, edx
mov word [0x100c3090], cx
mov edx, dword [ebp - 0x120]
add edx, 0x5a1
mov dword [ebp - 0xb38], edx
call dword [sym.imp.USER32.dll_GetShellWindow]
xor ecx, ecx
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], ecx
mov edx, dword [0x100c30e8]
mov eax, dword [0x100c30ec]
mov dword [ebp - 0x9e4], edx
mov dword [ebp - 0x9e0], eax
mov ecx, dword [ebp - 0x9e4]
or ecx, dword [ebp - 0x9e0]
jne 0x1001a529
jmp 0x1001a4c4
jmp 0x1001a4d0
jmp 0x1001a4ff
jmp 0x1001a524
jmp 0x1001a5b1
movzx edx, word [ebp - 0x34]
imul eax, edx, 0x3bae2b45
mov word [ebp - 0x18], ax
movsx ecx, word [0x100c3088]
movzx edx, word [ebp - 0x18]
sub ecx, edx
mov word [0x100c3088], cx
mov eax, dword [0x100c30e8]
mov ecx, dword [0x100c30ec]
mov dword [ebp - 0xb3c], ecx
add eax, 0xa31e2068
mov word [ebp - 0x1c], ax
movsx edx, byte [ebp - 0x12]
test edx, edx
je 0x1001a586
mov eax, dword [0x100c30d8]
mov ecx, dword [0x100c30dc]
mov dword [ebp - 0x454], eax
mov dword [ebp - 0x450], ecx
jmp 0x1001a597
movsx eax, word [ebp - 0x2c]
cdq
mov dword [ebp - 0x454], eax
mov dword [ebp - 0x450], edx
mov dx, word [ebp - 0x454]
mov word [0x100c30a0], dx
xor eax, eax
mov dword [ebp - 0x54], 0xb652
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x120]
add ecx, 0x597
mov dword [ebp - 0x5f0], ecx
xor edx, edx
mov dword [ebp - 0x40], 4
mov dword [ebp - 0x3c], edx
movsx eax, byte [ebp - 0x11]
not eax
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
mov al, byte [ebp - 0x12]
sub al, 1
mov byte [ebp - 0x12], al
mov ecx, dword [0x100c310c]
sub ecx, dword [ebp - 0x78]
mov edx, dword [0x100c310c]
sub edx, ecx
mov dword [0x100c310c], edx
mov eax, dword [ebp - 0x78]
and eax, 0x529b
cdq
push edx
push eax
mov eax, dword [0x100c3084]
push eax
mov ecx, dword [0x100c3080]
push ecx
call fcn.1008eb70
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov edx, 4
imul eax, edx, 0x4d
mov cl, byte [eax + 0x1013f080]
mov byte [ebp - 0x12], cl
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x45c], edx
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
ja 0x1001a929
jb 0x1001a667
cmp dword [ebp - 0x45c], 4
ja 0x1001a929
mov ecx, dword [ebp - 0x45c]
mov dword [ebp - 0xd38], ecx
mov edx, dword [ebp - 0xd38]
jmp dword [edx*4 + 0x10025c2c]
mov edx, dword [ebp - 0x120]
add edx, 0x79d
mov dword [ebp - 0xcdc], edx
xor eax, eax
mov dword [0x100c30d0], 2
mov dword [0x100c30d4], eax
movsx ecx, byte [ebp - 0x12]
movzx edx, word [0x100c30e0]
sub ecx, edx
movsx eax, byte [ebp - 0x12]
add eax, ecx
mov byte [ebp - 0x12], al
movsx ecx, word [ebp - 0x24]
imul ecx, dword [ebp - 0x58]
movsx edx, word [ebp - 0x24]
add edx, ecx
mov word [ebp - 0x24], dx
movsx eax, word [ebp - 0x2c]
imul eax, dword [ebp - 0x38]
mov word [ebp - 0x2c], ax
cmp dword [ebp - 0x4c], 0
jne 0x1001a992
mov dword [ebp - 0x170], 1
jmp 0x1001a99c
mov dword [ebp - 0x170], 0
mov ecx, dword [0x100c30d0]
mov edx, dword [0x100c30d4]
mov dword [ebp - 0x9ec], ecx
mov dword [ebp - 0x9e8], edx
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9e8]
jne 0x1001a9ce
mov dword [ebp - 0x174], 1
jmp 0x1001a9d8
mov dword [ebp - 0x174], 0
mov ecx, dword [ebp - 0x170]
imul ecx, dword [ebp - 0x174]
mov byte [ebp - 0x13], cl
movzx edx, byte [0x100c3062]
sub edx, 0x11
mov dword [ebp - 0x7c], edx
movsx eax, byte [ebp - 0x12]
sub eax, 0x132f9dab
cdq
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov eax, dword [0x100c30d0]
mov ecx, dword [0x100c30d4]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], ecx
mov edx, dword [ebp - 0x118]
or edx, dword [ebp - 0x114]
je 0x1001aa5c
cmp dword [ebp - 0x118], 1
jne 0x1001aa41
cmp dword [ebp - 0x114], 0
je 0x1001aaae
cmp dword [ebp - 0x118], 2
jne 0x1001aa57
cmp dword [ebp - 0x114], 0
je 0x1001ab2f
jmp 0x1001abeb
mov ax, word [0x100c3b38]
mov word [ebp - 0x1c], ax
mov dword [ebp - 0x78], 0x13b2b232
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
push 0
push 0
push edx
push ecx
call fcn.1008eb70
mov word [ebp - 0x1c], ax
xor eax, eax
mov dword [0x100c30c8], 0x9076c7fc
mov dword [0x100c30cc], eax
movzx ecx, word [ebp - 0x18]
sub ecx, 0xa2
mov byte [0x100c3075], cl
jmp 0x1001abeb
mov edx, dword [ebp - 0x38]
sub edx, 1
mov dword [ebp - 0x38], edx
push 0xd3bed
push 0xc775e138
mov eax, dword [0x100c30f4]
push eax
mov ecx, dword [0x100c30f0]
push ecx
call fcn.1008eb70
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
movzx eax, word [ebp - 0x20]
cdq
sub eax, dword [0x100c30b8]
mov word [ebp - 0x20], ax
movsx eax, word [ebp - 0x30]
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [0x100c3062]
not eax
cdq
add eax, dword [0x100c30d8]
adc edx, dword [0x100c30dc]
add ecx, eax
adc esi, edx
mov dword [0x100c3100], ecx
mov dword [0x100c3104], esi
movsx eax, word [0x100c3088]
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp 0x1001abeb
mov dx, word [0x100c30d8]
mov eax, 2
imul ecx, eax, 0x1c
mov word [ecx + 0x101928b8], dx
movzx eax, word [ebp - 0x20]
cdq
mov edx, dword [0x100c30a8]
mov ecx, dword [0x100c30ac]
mov dword [ebp - 0xb48], ecx
sub eax, edx
mov word [ebp - 0x20], ax
xor edx, edx
mov dword [0x100c30d0], 1
mov dword [0x100c30d4], edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
push 0
push 0x65
push ecx
push eax
call fcn.1008eb70
mov byte [ebp - 0x12], al
mov edx, dword [0x100c30c0]
mov eax, dword [0x100c30c4]
push 0
push 0xdc
push eax
push edx
call fcn.1008eb70
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c3100], eax
mov dword [0x100c3104], edx
movzx eax, byte [0x100c3063]
xor eax, 0x4d
cdq
push edx
push eax
mov edx, dword [0x100c30bc]
push edx
mov eax, dword [0x100c30b8]
push eax
call fcn.1008eb70
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
mov dword [ebp - 0x88], 0
movzx ecx, word [0x100c30e0]
test ecx, ecx
je 0x1001ac11
call dword [sym.imp.USER32.dll_IsWow64Message]
mov word [0x100c30a0], ax
jmp 0x1001ac92
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
mov ecx, dword [0x100c30cc]
add edx, dword [0x100c30c8]
adc eax, ecx
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
sub ecx, edx
sbb esi, eax
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], esi
xor edx, edx
mov dword [0x100c3100], 8
mov dword [0x100c3104], edx
mov ax, word [ebp - 0x20]
mov word [0x100c30b0], ax
mov ecx, dword [0x100c310c]
sub ecx, 0x53a0c4f3
xor edx, edx
mov eax, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
sub eax, ecx
sbb esi, edx
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], esi
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xb4c], edx
add ecx, 0x30519de1
mov word [0x100c30e0], cx
mov eax, 0xffff9a48
mov word [ebp - 0x1c], ax
movzx eax, word [ebp - 0x20]
cdq
add eax, 0x5e6959d8
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x4c]
shl ecx, 7
mov word [ebp - 0x30], cx
mov edx, 0xea
mov word [0x100c30e0], dx
movzx eax, byte [0x100c303b]
add eax, 0xca
movsx ecx, byte [0x100c3027]
sub ecx, eax
mov byte [0x100c3027], cl
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
mov dword [ebp - 0x9f4], edx
mov dword [ebp - 0x9f0], eax
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 0x9f8], esi
mov edx, dword [ebp - 0x9f0]
cmp edx, dword [ebp - 0x9f8]
jb 0x1001ae37
ja 0x1001ad28
mov eax, dword [ebp - 0x9f4]
cmp eax, dword [ebp - 0x9fc]
jb 0x1001ae37
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x6c]
or ecx, dword [ebp - 0x68]
jne 0x1001ad4b
xor edx, edx
mov dword [ebp - 0x46c], 1
mov dword [ebp - 0x468], edx
jmp 0x1001ad56
xorps xmm0, xmm0
movlpd qword [ebp - 0x46c], xmm0
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
push ecx
push eax
mov edx, dword [ebp - 0x468]
push edx
mov eax, dword [ebp - 0x46c]
push eax
call fcn.1008eb70
mov byte [str.NDisablePerfBackoff], al
mov ecx, dword [0x100c30c8]
mov edx, dword [0x100c30cc]
mov dword [0x100c3100], ecx
mov dword [0x100c3104], edx
mov eax, 4
imul ecx, eax, 0x81
mov eax, dword [ecx + 0x100f8988]
cdq
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
sub ecx, eax
sbb esi, edx
mov dword [0x100c30a8], ecx
mov dword [0x100c30ac], esi
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xb50], eax
add edx, 0x52a330c0
mov word [0x100c30e0], dx
jmp 0x1001ae27
mov dword [ebp - 4], 0xffffffff
jmp 0x1001ae37
movzx eax, byte [0x100c3062]
test eax, eax
jne 0x1001ae56
xor ecx, ecx
mov dword [ebp - 0x474], 1
mov dword [ebp - 0x470], ecx
jmp 0x1001ae61
xorps xmm0, xmm0
movlpd qword [ebp - 0x474], xmm0
mov edx, dword [ebp - 0x474]
add edx, dword [0x100c3080]
mov eax, dword [ebp - 0x470]
adc eax, dword [0x100c3084]
mov dword [0x100c3080], edx
mov dword [0x100c3084], eax
movsx ecx, word [0x100c3090]
shl ecx, 4
mov word [0x100c30b0], cx
mov edx, 2
imul eax, edx, 0x2b
movzx eax, word [eax + 0x100c3b40]
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov cl, byte [0x100c3b38]
mov byte [0x100c3027], cl
movsx edx, word [0x100c3088]
add edx, 0x7743
mov dword [ebp - 0x64], edx
mov eax, dword [0x100c310c]
mov dword [0x100c310c], eax
movsx eax, word [ebp - 0x28]
cdq
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
mov dword [ebp - 0xa04], eax
mov dword [ebp - 0xa00], edx
mov dword [ebp - 0xa0c], ecx
mov dword [ebp - 0xa08], esi
mov edx, dword [ebp - 0xa00]
cmp edx, dword [ebp - 0xa08]
jb 0x1001af26
ja 0x1001af1a
mov eax, dword [ebp - 0xa04]
cmp eax, dword [ebp - 0xa0c]
jb 0x1001af26
mov dword [ebp - 0x178], 1
jmp 0x1001af30
mov dword [ebp - 0x178], 0
movzx ecx, word [0x100c30b0]
cmp ecx, dword [ebp - 0x178]
je 0x1001af83
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
add edx, 1
adc eax, 0
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov cl, 1
call fcn.1008ebb0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov byte [0x100c3063], 8
movzx eax, byte [0x100c3062]
add eax, 0xf07f
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
jmp 0x1001b00b
movsx ecx, byte [ebp - 0x11]
movsx edx, byte [ebp - 0x12]
sub ecx, edx
mov byte [ebp - 0x11], cl
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, eax
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
mov dword [ebp - 0xb58], eax
sub ecx, edx
mov eax, dword [ebp - 0x4c]
cdq
and eax, ecx
mov dword [ebp - 0x4c], eax
movsx eax, byte [ebp - 0x11]
cdq
add eax, dword [0x100c30d8]
adc edx, dword [0x100c30dc]
push edx
push eax
mov ecx, dword [0x100c30dc]
push ecx
mov edx, dword [0x100c30d8]
push edx
call fcn.1008eb70
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov eax, dword [ebp - 0x58]
cdq
mov dword [0x100c30c0], eax
mov dword [0x100c30c4], edx
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0xb5c], ecx
add eax, 0x65bd4ffe
mov dword [ebp - 0x4c], eax
mov ecx, 0x10
mov esi, dword [ebp + 8]
lea edi, [ebp - 0xd88]
rep movsd dword es:[edi], dword [esi]
movsx edx, word [ebp - 0x30]
movsx eax, byte [str.NDisablePerfBackoff]
cmp edx, eax
jge 0x1001b54b
mov ecx, dword [0x100c3120]
mov esi, dword [0x100c3124]
movsx eax, byte [0x100c3027]
cdq
mov dword [ebp - 0xa14], ecx
mov dword [ebp - 0xa10], esi
mov dword [ebp - 0xa1c], eax
mov dword [ebp - 0xa18], edx
mov edx, dword [ebp - 0xa14]
cmp edx, dword [ebp - 0xa1c]
jne 0x1001b082
mov eax, dword [ebp - 0xa10]
cmp eax, dword [ebp - 0xa18]
jne 0x1001b082
mov dword [ebp - 0x17c], 1
jmp 0x1001b08c
mov dword [ebp - 0x17c], 0
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
mov dword [ebp - 0xa24], ecx
mov dword [ebp - 0xa20], edx
cmp dword [ebp - 0xa24], 0x23
jne 0x1001b0c2
cmp dword [ebp - 0xa20], 0
jne 0x1001b0c2
mov dword [ebp - 0x180], 1
jmp 0x1001b0cc
mov dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x17c]
cmp eax, dword [ebp - 0x180]
jle 0x1001b33b
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xa2c], ecx
mov dword [ebp - 0xa28], edx
mov eax, dword [ebp - 0xa2c]
or eax, dword [ebp - 0xa28]
jne 0x1001b113
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
jne 0x1001b113
mov edx, 1
test edx, edx
je 0x1001b1bd
movzx eax, word [0x100c30b0]
cdq
mov dword [ebp - 0xa34], eax
mov dword [ebp - 0xa30], edx
mov eax, dword [0x100c3084]
cmp eax, dword [ebp - 0xa30]
ja 0x1001b150
jb 0x1001b144
mov ecx, dword [0x100c3080]
cmp ecx, dword [ebp - 0xa34]
ja 0x1001b150
mov dword [ebp - 0x184], 1
jmp 0x1001b15a
mov dword [ebp - 0x184], 0
cmp dword [0x100c3084], 0
ja 0x1001b17a
jb 0x1001b16e
cmp dword [0x100c3080], 0x61
ja 0x1001b17a
mov dword [ebp - 0x188], 1
jmp 0x1001b184
mov dword [ebp - 0x188], 0
mov edx, dword [ebp - 0x184]
cmp edx, dword [ebp - 0x188]
jle 0x1001b1b8
mov ecx, 9
mov esi, str.OneSettingsCreateD
lea edi, [ebp - 0xdb0]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xdb0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x100c310c], eax
jmp 0x1001b336
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
je 0x1001b236
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
push 0
push 0x65116640
push eax
push edx
call fcn.1008eb70
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov edx, 0xffffbbbf
mov word [ebp - 0x28], dx
movsx eax, byte [0x100c3075]
imul eax, eax, 0x46
cdq
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
movzx ecx, word [ebp - 0x18]
shl ecx, 5
mov dword [0x100c310c], ecx
movsx edx, word [ebp - 0x2c]
mov eax, dword [ebp - 0x4c]
add eax, edx
mov dword [ebp - 0x4c], eax
jmp 0x1001b336
movsx ecx, byte [ebp - 0x13]
cmp dword [ebp - 0x7c], ecx
je 0x1001b24b
mov dword [ebp - 0x18c], 1
jmp 0x1001b255
mov dword [ebp - 0x18c], 0
movsx edx, byte [ebp - 0x13]
cmp dword [ebp - 0x18c], edx
je 0x1001b26d
mov dword [ebp - 0x190], 1
jmp 0x1001b277
mov dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x190]
not eax
test eax, eax
je 0x1001b2d8
mov cx, word [ebp - 0x18]
sub cx, 1
mov word [ebp - 0x18], cx
mov edx, dword [ebp - 0x7c]
not edx
movsx eax, word [ebp - 0x24]
not eax
xor edx, eax
mov dword [ebp - 0x38], edx
mov ecx, dword [0x100c310c]
add ecx, 1
mov dword [0x100c310c], ecx
movzx eax, byte [0x100c303b]
add eax, 0xc85b
cdq
mov dword [0x100c30c0], eax
mov dword [0x100c30c4], edx
movsx edx, byte [str.NDisablePerfBackoff]
add edx, dword [ebp - 0x64]
mov byte [str.NDisablePerfBackoff], dl
jmp 0x1001b336
cmp dword [0x100c310c], 0
jne 0x1001b336
mov eax, dword [0x100c310c]
mov byte [ebp - 0x13], al
mov cx, word [0x100c30fc]
sub cx, 1
mov word [0x100c30fc], cx
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov cl, 5
call fcn.1008ebd0
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
movsx eax, word [0x100c30fc]
shl eax, 3
cdq
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
jmp 0x1001b549
cmp dword [ebp - 0x64], 0x60923484
je 0x1001b350
movzx ecx, word [ebp - 0x18]
test ecx, ecx
je 0x1001b434
movsx edx, word [ebp - 0x28]
sub edx, dword [ebp - 0x58]
movsx eax, word [ebp - 0x28]
sub eax, edx
mov word [ebp - 0x28], ax
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov dword [ebp - 0xa3c], ecx
mov dword [ebp - 0xa38], edx
mov eax, dword [ebp - 0xa3c]
or eax, dword [ebp - 0xa38]
je 0x1001b396
movzx ecx, byte [0x100c303b]
mov dword [ebp - 0x194], ecx
jmp 0x1001b3a0
movsx edx, word [ebp - 0x1c]
mov dword [ebp - 0x194], edx
mov eax, dword [ebp - 0x194]
cdq
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov eax, dword [0x100c3120]
mov ecx, dword [0x100c3124]
sub eax, 0x8578e096
sbb ecx, 0
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], ecx
mov edx, dword [0x100c30a8]
mov eax, dword [0x100c30ac]
add edx, 0x5cae7e40
adc eax, 0x5fdee
mov dword [ebp - 0xa44], edx
mov dword [ebp - 0xa40], eax
mov ecx, dword [ebp - 0xa44]
or ecx, dword [ebp - 0xa40]
jne 0x1001b40c
mov dword [ebp - 0x198], 1
jmp 0x1001b416
mov dword [ebp - 0x198], 0
mov edx, dword [ebp - 0x198]
mov dword [ebp - 0x64], edx
movsx eax, word [ebp - 0x1c]
add eax, 0x3998
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp 0x1001b549
mov eax, 0xa432bed
or eax, 0xdee1b
je 0x1001b4aa
xor ecx, ecx
mov dword [0x100c30a8], 0x3800c7d7
mov dword [0x100c30ac], ecx
movsx eax, byte [ebp - 0x11]
cdq
add eax, 0xc7724c6b
mov word [0x100c3118], ax
movsx eax, word [ebp - 0x30]
sub eax, 0x8b
cdq
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
mov edx, 0x3773
mov word [ebp - 0x28], dx
movzx eax, word [ebp - 0x20]
add eax, 0x7f45ed1f
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movzx eax, byte [0x100c303b]
movzx ecx, word [0x100c30e0]
sub eax, ecx
mov byte [0x100c303b], al
jmp 0x1001b549
cmp dword [ebp - 0x64], 0
je 0x1001b549
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
add edx, 0x604d
adc eax, 0
mov ecx, dword [ebp - 0x6c]
sub ecx, edx
mov edx, dword [ebp - 0x68]
sbb edx, eax
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], edx
cmp dword [ebp - 0x4c], 0
je 0x1001b4f7
mov eax, dword [0x100c30d0]
mov ecx, dword [0x100c30d4]
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x410], ecx
jmp 0x1001b508
movzx eax, word [ebp - 0x34]
cdq
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x410], edx
mov edx, dword [ebp - 0x414]
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], eax
mov cx, word [0x100c3b38]
mov word [ebp - 0x24], cx
xor edx, edx
mov dword [0x100c3080], 0x17f88cd9
mov dword [0x100c3084], edx
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [0x100c3098], eax
mov dword [0x100c309c], ecx
jmp 0x1001b5c6
movzx edx, word [0x100c30a0]
test edx, edx
je 0x1001b5c6
movsx eax, byte [0x100c3027]
test eax, eax
je 0x1001b5c6
movzx ecx, word [ebp - 0x20]
test ecx, ecx
je 0x1001b5c6
mov edx, 1
imul eax, edx, 0x5c
movzx eax, byte [eax + 0x10118b50]
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
add ecx, 0xbb
adc edx, 0
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
mov eax, dword [0x100c30d8]
xor eax, 0x4e6d
mov ecx, dword [0x100c30dc]
xor ecx, 0
mov dword [0x100c3100], eax
mov dword [0x100c3104], ecx
movzx edx, byte [0x100c3062]
shl edx, 6
mov word [ebp - 0x20], dx
movzx eax, word [ebp - 0xd88]
cmp eax, 0x5a4d
jne 0x10025b61
mov ecx, 8
mov word [ebp - 0x24], cx
movsx edx, byte [ebp - 0x12]
movsx eax, byte [ebp - 0x13]
sub edx, eax
movsx ecx, byte [ebp - 0x12]
or ecx, edx
mov byte [ebp - 0x12], cl
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xb60], eax
sub edx, 0x3dea
mov byte [ebp - 0x11], dl
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
add ecx, eax
adc esi, edx
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], esi
mov edx, dword [ebp - 0x7c]
add edx, 1
mov dword [ebp - 0x7c], edx
movsx eax, word [ebp - 0x24]
movsx ecx, word [ebp - 0x24]
cmp eax, ecx
je 0x1001b660
mov dword [ebp - 0x19c], 1
jmp 0x1001b66a
mov dword [ebp - 0x19c], 0
movsx edx, word [ebp - 0x24]
cmp edx, 0x27
je 0x1001b67f
mov dword [ebp - 0x1a0], 1
jmp 0x1001b689
mov dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x19c]
cmp eax, dword [ebp - 0x1a0]
je case.default.0x1001b759
mov ecx, 3
mov word [ebp - 0x2c], cx
movsx eax, byte [0x100c3075]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xb64], eax
add ecx, edx
movsx eax, byte [0x100c3075]
cdq
sub eax, ecx
mov byte [0x100c3075], al
mov ecx, dword [0x100c30c8]
mov edx, dword [0x100c30cc]
push edx
push ecx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.1008eb70
push edx
push eax
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x6c]
push eax
call fcn.1008eb70
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
mov ecx, 0x6b
mov word [ebp - 0x18], cx
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
mov ecx, dword [0x100c3104]
add edx, dword [0x100c3100]
adc eax, ecx
mov dword [0x100c3110], edx
mov dword [0x100c3114], eax
movzx edx, word [ebp - 0x34]
add edx, dword [ebp - 0x4c]
movzx eax, word [ebp - 0x34]
sub eax, edx
mov word [ebp - 0x34], ax
movsx ecx, word [ebp - 0x2c]
mov dword [ebp - 0x1a4], ecx
cmp dword [ebp - 0x1a4], 3
ja case.default.0x1001b759
mov edx, dword [ebp - 0x1a4]
jmp dword [edx*4 + 0x10025c40]
movzx eax, word [0x100c30b0]
test eax, eax
je 0x1001b777
movzx ecx, word [ebp - 0x20]
mov dword [ebp - 0x1a8], ecx
jmp 0x1001b781
movsx edx, word [ebp - 0x24]
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x78]
add eax, 0x6d
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
mov cx, word [0x100c3088]
mov byte [ebp - 0x12], cl
mov edx, dword [0x100c3108]
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
add eax, 1
adc ecx, 0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
jmp case.default.0x1001b759
mov edx, 4
imul eax, edx, 0xa3f
movzx ecx, byte [0x100c3063]
sub ecx, dword [eax + 0x10155538]
mov byte [0x100c3063], cl
movzx edx, word [ebp - 0x18]
sub edx, 0x261423c7
mov dword [ebp - 0x58], edx
mov eax, 0x5e57
mov word [ebp - 0x34], ax
mov ecx, dword [ebp - 0x74]
sub ecx, 0x9124af2f
mov word [ebp - 0x30], cx
mov edx, dword [ebp - 0x58]
sub edx, 0x4d7c744
movsx eax, word [ebp - 0x24]
xor eax, edx
mov word [ebp - 0x24], ax
mov ecx, dword [ebp - 0x38]
not ecx
mov dword [0x100c310c], ecx
jmp case.default.0x1001b759
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
sub edx, 0x7ee6
sbb eax, 0
mov dword [0x100c30f0], edx
mov dword [0x100c30f4], eax
mov cl, byte [0x100c3090]
mov byte [0x100c3027], cl
movsx edx, word [ebp - 0x28]
imul eax, edx, 0x4d2e9729
cdq
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0xb68], ecx
xor eax, 0xabe943ec
mov word [ebp - 0x34], ax
movzx edx, word [ebp - 0x34]
test edx, edx
je 0x1001b898
mov al, byte [ebp - 0x12]
mov byte [ebp - 0x89], al
jmp 0x1001b8a1
mov cl, byte [ebp - 0x11]
mov byte [ebp - 0x89], cl
movsx dx, byte [ebp - 0x89]
mov word [ebp - 0x2c], dx
jmp case.default.0x1001b759
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [0x100c3100], eax
mov dword [0x100c3104], ecx
movsx edx, byte [ebp - 0x12]
add edx, dword [0x100c30f8]
sub edx, dword [ebp - 0x78]
mov dword [0x100c3108], edx
mov eax, 0x7f650
mov dword [0x100c3080], 0xe086954b
mov dword [0x100c3084], eax
xor ecx, ecx
mov dword [0x100c3100], 1
mov dword [0x100c3104], ecx
movsx edx, word [0x100c3090]
movzx eax, word [ebp - 0x18]
sub edx, eax
movsx ecx, word [0x100c3090]
add ecx, edx
mov word [0x100c3090], cx
movsx eax, word [ebp - 0x1c]
movsx edx, byte [ebp - 0x13]
add eax, edx
not eax
cdq
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
mov eax, dword [0x100c3b38]
mov dword [ebp - 0x124], eax
movsx eax, byte [0x100c3075]
cdq
add eax, dword [0x100c30d8]
mov byte [0x100c3075], al
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xb6c], edx
sub ecx, 0xff
mov byte [ebp - 0x13], cl
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0xb70], ecx
add eax, 0x80da4335
mov word [ebp - 0x18], ax
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], eax
mov ecx, dword [0x100c310c]
add ecx, 0x47220dad
mov word [0x100c30fc], cx
mov edx, dword [ebp - 0x124]
add edx, 0x57a
mov dword [ebp - 0xb74], edx
mov eax, dword [ebp - 0x7c]
sub eax, 0x24
mov dword [ebp - 0x38], eax
movzx ecx, word [ebp - 0x34]
mov dword [ebp - 0x64], ecx
movsx edx, word [0x100c3118]
add edx, 0x7085
mov word [ebp - 0x18], dx
movsx eax, word [ebp - 0x30]
cdq
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
mov eax, dword [ebp - 0x58]
cdq
mov ecx, 8
imul ecx, ecx, 0x43
mov dword [ecx + 0x1017a1f0], eax
mov dword [ecx + 0x1017a1f4], edx
mov edx, dword [ebp - 0x124]
add edx, 0x854
mov dword [ebp - 0xb78], edx
push 0xfd
call fcn.1004f040
add esp, 4
mov word [0x100c30b0], ax
movzx eax, word [0x100c30b0]
test eax, eax
jge 0x1001ba3c
jmp 0x1001ba37
jmp 0x1001bb9b
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xa4c], ecx
mov dword [ebp - 0xa48], edx
mov eax, dword [ebp - 0xa4c]
or eax, dword [ebp - 0xa48]
je 0x1001bb9b
cmp dword [0x100c3108], 0
jne 0x1001ba78
mov dword [ebp - 0x1ac], 1
jmp 0x1001ba82
mov dword [ebp - 0x1ac], 0
movzx ecx, byte [0x100c3062]
movsx edx, word [ebp - 0x2c]
sub ecx, edx
mov eax, dword [ebp - 0x1ac]
sub eax, ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [0x100c3062]
cdq
mov edi, dword [0x100c3098]
mov ebx, dword [0x100c309c]
not edi
not ebx
add eax, edi
adc edx, ebx
not eax
not edx
mov edi, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x50]
not edi
not ebx
add edi, 0xffffb184
adc ebx, 0xffffffff
not edi
not ebx
add eax, edi
adc edx, ebx
add ecx, eax
adc esi, edx
mov dword [0x100c3098], ecx
mov dword [0x100c309c], esi
mov dword [ebp - 0x38], 0x5f
mov edx, dword [0x100c3080]
or edx, dword [0x100c3084]
jne 0x1001bb10
xor eax, eax
mov dword [ebp - 0x47c], 1
mov dword [ebp - 0x478], eax
jmp 0x1001bb1b
xorps xmm0, xmm0
movlpd qword [ebp - 0x47c], xmm0
mov ecx, dword [0x100c3080]
not ecx
mov edx, dword [0x100c3084]
not edx
add ecx, dword [ebp - 0x47c]
adc edx, dword [ebp - 0x478]
mov dword [ebp - 0xa54], ecx
mov dword [ebp - 0xa50], edx
mov eax, dword [ebp - 0xa54]
or eax, dword [ebp - 0xa50]
jne 0x1001bb65
xor ecx, ecx
mov dword [ebp - 0xa5c], 1
mov dword [ebp - 0xa58], ecx
jmp 0x1001bb70
xorps xmm0, xmm0
movlpd qword [ebp - 0xa5c], xmm0
mov edx, dword [ebp - 0xa5c]
add edx, 0xfe360087
mov byte [0x100c3062], dl
movzx eax, byte [0x100c303b]
sub eax, 0x16c94331
xor ecx, ecx
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], ecx
mov edx, dword [ebp - 0x124]
add edx, 0x5d4
mov dword [ebp - 0xa8], edx
push 0xffffffffffffffb0
movzx eax, byte [0x100c30a0]
push eax
movzx ecx, byte [0x100c3063]
push ecx
call fcn.10052870
add esp, 0xc
movsx edx, al
mov dword [0x100c30f8], edx
cmp dword [0x100c30f8], 0
jne 0x1001bcf4
cmp dword [ebp - 0x4c], 0x6c522894
jg 0x1001bbf2
mov dword [ebp - 0x1b0], 1
jmp 0x1001bbfc
mov dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
not eax
test eax, eax
je 0x1001bc6c
movsx ecx, word [ebp - 0x24]
movzx edx, word [0x100c30a0]
lea eax, [edx + ecx + 0x36]
mov word [0x100c30a0], ax
imul ecx, dword [ebp - 0x78], 0xdd4e318d
mov word [0x100c3088], cx
movsx eax, byte [0x100c3027]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
movsx eax, word [ebp - 0x24]
cdq
mov ecx, eax
xor ecx, dword [0x100c30f0]
movsx eax, word [ebp - 0x24]
cdq
add eax, ecx
mov word [ebp - 0x24], ax
mov byte [0x100c3063], 0x4b
jmp 0x1001bcf4
mov edx, dword [0x100c3100]
mov eax, dword [0x100c3104]
mov dword [ebp - 0xb7c], eax
add edx, 0x7c04324
mov word [0x100c30fc], dx
movzx ecx, byte [0x100c303b]
add ecx, dword [0x100c30f8]
or ecx, dword [0x100c30f8]
mov dword [0x100c30f8], ecx
movsx edx, word [0x100c3088]
test edx, edx
jne 0x1001bcb7
mov byte [ebp - 0x8a], 1
jmp 0x1001bcbe
mov byte [ebp - 0x8a], 0
mov al, byte [ebp - 0x8a]
mov byte [str.NDisablePerfBackoff], al
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
push 0
push 0x9e
push edx
push ecx
call fcn.1008eb70
mov word [ebp - 0x20], ax
movzx eax, word [ebp - 0x34]
sub eax, 0x2e999f44
mov word [ebp - 0x18], ax
mov ecx, dword [ebp - 0xa8]
add ecx, dword [ebp - 0xa8]
mov edx, 0x2d4
sub edx, dword [ebp - 0xa8]
cmp ecx, edx
je 0x10025b61
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov word [ebp - 0x30], ax
movsx eax, word [ebp - 0x30]
test eax, eax
je case.default.0x1001bd94
mov dword [0x100c3108], 3
mov ecx, dword [0x100c3b38]
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x74]
add edx, 0x25286717
mov word [ebp - 0x2c], dx
mov eax, dword [0x100c3108]
sub eax, 0x22cafa46
xor ecx, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov edx, dword [0x100c3108]
mov dword [ebp - 0x1b4], edx
cmp dword [ebp - 0x1b4], 3
ja case.default.0x1001bd94
mov eax, dword [ebp - 0x1b4]
jmp dword [eax*4 + 0x10025c50]
mov byte [ebp - 0x13], 0x4a
cmp dword [0x100c310c], 0
je 0x1001bdc2
mov ecx, dword [0x100c30b8]
mov edx, dword [0x100c30bc]
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x418], edx
jmp 0x1001bdd6
movzx eax, byte [0x100c303b]
cdq
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x41c]
mov ecx, dword [ebp - 0x418]
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], ecx
movsx eax, word [ebp - 0x2c]
add eax, 0x7456
cdq
and eax, dword [0x100c3080]
and edx, dword [0x100c3084]
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
movzx edx, word [0x100c30b0]
movsx eax, word [0x100c308c]
add edx, eax
mov word [0x100c30b0], dx
mov eax, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov cl, 3
call fcn.1008ec80
mov word [0x100c30e0], ax
jmp case.default.0x1001bd94
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xb80], edx
add eax, ecx
mov ecx, dword [0x100c30d0]
mov edx, dword [0x100c30d4]
mov dword [ebp - 0xb84], edx
add ecx, eax
add ecx, 0x86eeaa40
mov word [ebp - 0x1c], cx
movzx eax, byte [0x100c303b]
test eax, eax
jne 0x1001be91
xor ecx, ecx
mov dword [ebp - 0x484], 1
mov dword [ebp - 0x480], ecx
jmp 0x1001be9c
xorps xmm0, xmm0
movlpd qword [ebp - 0x484], xmm0
mov edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x480]
mov dword [0x100c3100], edx
mov dword [0x100c3104], eax
movsx eax, word [ebp - 0x1c]
cdq
push 0x5fc3
push 0xb8e3d2ae
push edx
push eax
call fcn.1008eb70
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
movzx eax, byte [0x100c3063]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [ebp - 0x24]
not eax
cdq
add eax, dword [ebp - 0x6c]
adc edx, dword [ebp - 0x68]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movsx eax, word [0x100c3088]
movzx edx, word [0x100c30a0]
sub eax, edx
movsx edx, word [ebp - 0x1c]
movzx edi, byte [0x100c3063]
sub edx, edi
not edx
add eax, edx
cdq
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov word [0x100c30a0], ax
movsx eax, word [ebp - 0x28]
movzx ecx, word [0x100c30e0]
imul eax, ecx
test eax, eax
jne 0x1001bf49
mov dword [ebp - 0x1b8], 1
jmp 0x1001bf53
mov dword [ebp - 0x1b8], 0
movsx edx, word [0x100c308c]
not edx
mov ecx, dword [0x100c310c]
not ecx
add edx, dword [ebp - 0x1b8]
add ecx, edx
xor esi, esi
mov edi, dword [0x100c3098]
mov ebx, dword [0x100c309c]
not edi
not ebx
movzx eax, byte [0x100c303b]
cdq
sub edi, eax
sbb ebx, edx
mov edx, dword [ebp - 0x5c]
sub edi, dword [ebp - 0x60]
sbb ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.1008eb70
mov byte [0x100c303b], al
jmp case.default.0x1001bd94
movzx eax, byte [0x100c3062]
cdq
sub eax, 0x613e95f8
mov word [ebp - 0x34], ax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
and eax, dword [0x100c3100]
and ecx, dword [0x100c3104]
mov dword [ebp - 0xa64], eax
mov dword [ebp - 0xa60], ecx
mov edx, dword [ebp - 0xa64]
or edx, dword [ebp - 0xa60]
jne 0x1001bfee
mov dword [ebp - 0x1bc], 1
jmp 0x1001bff8
mov dword [ebp - 0x1bc], 0
movzx eax, word [0x100c30e0]
imul eax, dword [ebp - 0x1bc]
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
movsx eax, word [ebp - 0x28]
imul ecx, eax, 0xaf98
mov word [ebp - 0x30], cx
mov edx, dword [0x100c3108]
not edx
mov dword [ebp - 0x4c], edx
jmp case.default.0x1001bd94
movzx eax, word [ebp - 0x18]
movsx ecx, byte [0x100c3027]
imul eax, ecx
cdq
mov esi, eax
mov edi, edx
movsx eax, word [0x100c3088]
cdq
push edx
push eax
mov edx, dword [0x100c30f4]
push edx
mov eax, dword [0x100c30f0]
push eax
call fcn.1008eb70
push edx
push eax
push edi
push esi
call fcn.1008eb70
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
movzx ecx, word [0x100c30a0]
imul edx, ecx, 0xd5830
mov dword [0x100c30f8], edx
movsx eax, word [0x100c30fc]
add eax, 0x1fe9c970
mov byte [0x100c3075], al
movzx ecx, word [0x100c30e0]
imul edx, ecx, 0xc2d63cd
mov byte [ebp - 0x12], dl
movsx eax, word [0x100c3090]
cdq
sub eax, 0xff061b29
sbb edx, 0xabf3e
mov ecx, dword [0x100c30b8]
sub ecx, eax
mov eax, dword [0x100c30bc]
sbb eax, edx
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], eax
push 0x46
push 0
push 0x8a
call fcn.1004fd80
add esp, 0xc
movzx eax, ax
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov ecx, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov dword [ebp - 0xa6c], ecx
mov dword [ebp - 0xa68], edx
mov eax, dword [ebp - 0xa6c]
or eax, dword [ebp - 0xa68]
je 0x1001c321
movsx eax, byte [str.NDisablePerfBackoff]
cdq
mov dword [ebp - 0xa74], eax
mov dword [ebp - 0xa70], edx
mov ecx, dword [0x100c30d8]
cmp ecx, dword [ebp - 0xa74]
jne 0x1001c144
mov edx, dword [0x100c30dc]
cmp edx, dword [ebp - 0xa70]
je 0x1001c150
mov dword [ebp - 0x1c0], 1
jmp 0x1001c15a
mov dword [ebp - 0x1c0], 0
cmp dword [0x100c30d8], 0x3d
jne 0x1001c16c
cmp dword [0x100c30dc], 0
je 0x1001c178
mov dword [ebp - 0x1c4], 1
jmp 0x1001c182
mov dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x1c0]
cmp eax, dword [ebp - 0x1c4]
jl 0x1001c254
movsx eax, word [ebp - 0x2c]
add eax, 0x1f41
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], esi
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
push 0x13d21
push 0x34b2c030
push eax
push edx
call fcn.1008eb70
mov ecx, eax
movsx eax, byte [str.NDisablePerfBackoff]
cdq
sub eax, ecx
mov byte [str.NDisablePerfBackoff], al
mov eax, dword [0x100c3108]
cdq
push 0xf4d91
push 0xb2a9a3be
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x64], eax
movzx edx, byte [0x100c3062]
test edx, edx
jne 0x1001c20e
mov eax, 1
mov word [ebp - 0x9a], ax
jmp 0x1001c217
xor ecx, ecx
mov word [ebp - 0x9a], cx
mov dx, word [ebp - 0x9a]
mov word [ebp - 0x1c], dx
mov eax, dword [0x100c30f8]
cdq
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xb88], edx
sub eax, ecx
mov dword [0x100c30f8], eax
movzx eax, word [0x100c30a0]
imul eax, eax, 0xd2
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
jmp 0x1001c31c
movsx ecx, byte [str.NDisablePerfBackoff]
test ecx, ecx
je 0x1001c31c
movsx edx, byte [0x100c3075]
add edx, 0x1a
mov dword [ebp - 0x64], edx
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [ebp - 0x6c]
sub ecx, eax
mov eax, dword [ebp - 0x68]
sbb eax, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], eax
movzx ecx, byte [0x100c303b]
mov edx, dword [ebp - 0x7c]
not edx
add ecx, edx
jne 0x1001c2a1
mov dword [ebp - 0x1c8], 1
jmp 0x1001c2ab
mov dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x38]
xor eax, 0x1e887265
add eax, dword [ebp - 0x1c8]
jne 0x1001c2c7
mov dword [ebp - 0x1cc], 1
jmp 0x1001c2d1
mov dword [ebp - 0x1cc], 0
movsx eax, byte [0x100c3027]
and eax, dword [ebp - 0x1cc]
cdq
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x50]
add ecx, dword [ebp - 0x54]
adc edx, eax
mov eax, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
sub eax, ecx
sbb esi, edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], esi
mov ecx, 0xbd2c
mov word [0x100c30e0], cx
mov dword [0x100c3108], 0xc229
jmp 0x1001c3bc
movzx eax, byte [0x100c3063]
cdq
mov dword [ebp - 0xa7c], eax
mov dword [ebp - 0xa78], edx
mov edx, dword [ebp - 0xa7c]
cmp edx, dword [ebp - 0x74]
jne 0x1001c3bc
mov eax, dword [ebp - 0xa78]
cmp eax, dword [ebp - 0x70]
jne 0x1001c3bc
movzx eax, word [0x100c30e0]
sub eax, 0x93
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
xor ecx, ecx
mov dword [ebp - 0x60], 2
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x70]
push edx
mov eax, dword [ebp - 0x74]
push eax
mov ecx, dword [0x100c30dc]
push ecx
mov edx, dword [0x100c30d8]
push edx
call fcn.1008eb70
or eax, dword [0x100c30d8]
or edx, dword [0x100c30dc]
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
sub eax, 0x9feaf00b
sbb ecx, 0x80318
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
mov edx, 8
mov word [ebp - 0x2c], dx
cmp dword [ebp - 0x5f0], 0xa1
je 0x1001dfa2
push 0
push 0
movzx eax, word [ebp - 0x18]
cdq
push edx
push eax
push 0
push 0
movsx eax, byte [ebp - 0x13]
cdq
push edx
push eax
call fcn.100502f0
add esp, 0x20
mov byte [ebp - 0x11], al
movsx eax, byte [ebp - 0x11]
test eax, eax
jle 0x1001c401
mov dword [ebp - 0x1d0], 1
jmp 0x1001c40b
mov dword [ebp - 0x1d0], 0
movsx ecx, byte [ebp - 0x11]
cmp ecx, 0x3f
jle 0x1001c420
mov dword [ebp - 0x1d4], 1
jmp 0x1001c42a
mov dword [ebp - 0x1d4], 0
mov edx, dword [ebp - 0x1d0]
cmp edx, dword [ebp - 0x1d4]
jle 0x1001c4bd
movsx eax, word [ebp - 0x1c]
shl eax, 1
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x38]
imul ecx, eax
mov dword [ebp - 0x38], ecx
xor edx, edx
mov dword [ebp - 0x40], 0x55ae
mov dword [ebp - 0x3c], edx
movzx eax, word [0x100c30b0]
test eax, eax
je 0x1001c48a
mov ecx, dword [0x100c30f0]
mov edx, dword [0x100c30f4]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x488], edx
jmp 0x1001c49b
movsx eax, word [ebp - 0x1c]
cdq
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x488], edx
mov ax, word [ebp - 0x48c]
mov word [0x100c30e0], ax
movsx eax, word [ebp - 0x1c]
sub eax, 0xcb
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp 0x1001c61b
mov ecx, 0xf2453c21
test ecx, ecx
je 0x1001c61b
movsx edx, word [ebp - 0x30]
mov eax, dword [ebp - 0x64]
xor eax, edx
jne 0x1001c4e1
mov dword [ebp - 0x1dc], 1
jmp 0x1001c4eb
mov dword [ebp - 0x1dc], 0
movsx ecx, word [0x100c30fc]
test ecx, ecx
jne 0x1001c502
mov dword [ebp - 0x1d8], 1
jmp 0x1001c50c
mov dword [ebp - 0x1d8], 0
movsx edx, word [ebp - 0x1c]
imul edx, dword [ebp - 0x1d8]
test edx, edx
jne 0x1001c527
mov dword [ebp - 0x1e0], 1
jmp 0x1001c531
mov dword [ebp - 0x1e0], 0
cmp dword [ebp - 0x78], 0
jne 0x1001c543
mov dword [ebp - 0x1e4], 1
jmp 0x1001c54d
mov dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x1dc]
imul eax, dword [ebp - 0x1e0]
cdq
mov ecx, eax
mov esi, edx
imul eax, dword [ebp - 0x1e4], 0x20e8
cdq
mov edi, eax
mov ebx, edx
mov eax, dword [0x100c3080]
not eax
mov edx, dword [0x100c3084]
not edx
mov dword [ebp - 0x5fc], ecx
movsx ecx, byte [str.NDisablePerfBackoff]
mov dword [ebp - 0x5f4], eax
mov eax, ecx
mov dword [ebp - 0x5f8], edx
cdq
mov ecx, dword [ebp - 0x5f4]
add ecx, eax
mov eax, dword [ebp - 0x5f8]
adc eax, edx
add edi, ecx
adc ebx, eax
push ebx
push edi
push esi
mov ecx, dword [ebp - 0x5fc]
push ecx
call fcn.1008eb70
mov word [ebp - 0x28], ax
xor edx, edx
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
sub eax, dword [ebp - 0x38]
sbb ecx, edx
mov edx, dword [0x100c3098]
mov esi, dword [0x100c309c]
and edx, eax
and esi, ecx
mov dword [0x100c3098], edx
mov dword [0x100c309c], esi
mov ax, word [0x100c3b38]
mov word [0x100c3088], ax
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x70]
mov cl, 6
call fcn.1008ebd0
mov byte [0x100c3075], al
movsx eax, byte [ebp - 0x12]
cdq
add eax, 0x4bbea8
mov byte [0x100c3075], al
jmp 0x1001c62c
jmp 0x1001c64c
cmp dword [ebp - 0xd4c], 0x40
jbe 0x1001dfa2
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x6e4], ecx
mov dword [ebp - 0x6e0], edx
mov eax, dword [ebp - 0x6e4]
or eax, dword [ebp - 0x6e0]
je 0x1001c879
mov ecx, 0xcdc45e6c
test ecx, ecx
je 0x1001c706
movzx edx, word [ebp - 0x34]
imul eax, edx, 0xce
mov dword [ebp - 0x58], eax
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
push 0
push 0xf8
push edx
push ecx
call fcn.1008eb70
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x7c]
cdq
sub eax, 0x5650b371
sbb edx, 0x97a74
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
mov dword [ebp - 0x38], 0x15
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov edx, dword [0x100c30ac]
sub eax, dword [0x100c30a8]
sbb ecx, edx
mov dword [0x100c3098], eax
mov dword [0x100c309c], ecx
jmp 0x1001c874
mov eax, dword [0x100c310c]
mov ecx, 2
imul edx, ecx, 0x5dd
mov word [edx + 0x1016f650], ax
movsx eax, byte [ebp - 0x12]
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov dword [ebp - 0x38], ecx
movsx edx, word [ebp - 0x24]
test edx, edx
jne 0x1001c73d
mov dword [ebp - 0x1e8], 1
jmp 0x1001c747
mov dword [ebp - 0x1e8], 0
movsx eax, byte [ebp - 0x13]
add eax, dword [ebp - 0x1e8]
mov word [0x100c308c], ax
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
push esi
push eax
push edx
push ecx
call fcn.1008eb70
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
sub ecx, eax
sbb esi, edx
mov dword [0x100c3098], ecx
mov dword [0x100c309c], esi
cmp dword [ebp - 0x38], 0
jne 0x1001c7a0
mov dword [ebp - 0x1ec], 1
jmp 0x1001c7aa
mov dword [ebp - 0x1ec], 0
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xa84], edx
mov dword [ebp - 0xa80], eax
mov ecx, dword [ebp - 0xa84]
or ecx, dword [ebp - 0xa80]
jne 0x1001c7d6
mov dword [ebp - 0x1f0], 1
jmp 0x1001c7e0
mov dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x1ec]
add eax, dword [ebp - 0x1f0]
not eax
movzx edx, byte [0x100c3063]
sub eax, edx
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
add ecx, dword [0x100c30b8]
adc esi, dword [0x100c30bc]
mov edi, dword [0x100c30f8]
or edi, 0xd43dc8eb
xor ebx, ebx
add ecx, edi
adc esi, ebx
add eax, ecx
adc edx, esi
mov dword [ebp - 0xa8c], eax
mov dword [ebp - 0xa88], edx
mov edx, dword [ebp - 0xa8c]
or edx, dword [ebp - 0xa88]
jne 0x1001c84c
mov dword [ebp - 0x1f4], 1
jmp 0x1001c856
mov dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 0xc75ede9
mov edx, dword [ebp - 0x70]
sbb edx, 0
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
jmp 0x1001ca2c
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0xa94], eax
mov dword [ebp - 0xa90], ecx
mov edx, dword [ebp - 0xa94]
or edx, dword [ebp - 0xa90]
je 0x1001c93b
movzx eax, word [ebp - 0x20]
add eax, dword [ebp - 0x7c]
movzx ecx, word [ebp - 0x20]
add ecx, eax
mov word [ebp - 0x20], cx
mov edx, 4
imul eax, edx, 0x43
mov ecx, dword [eax + 0x10123e40]
xor edx, edx
mov dword [0x100c3100], ecx
mov dword [0x100c3104], edx
movsx eax, word [0x100c308c]
cdq
mov ecx, eax
mov esi, edx
sub ecx, dword [ebp - 0x6c]
sbb esi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x4c]
cdq
push edx
push eax
push esi
push ecx
call fcn.1008eb70
not eax
not edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov edx, 0xffff9c6f
mov word [0x100c30fc], dx
movzx eax, byte [0x100c3062]
cdq
sub eax, 0x8af5b82f
sbb edx, 0x5ae1d
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov eax, dword [ebp - 0x6c]
xor eax, 0x573e8016
mov ecx, dword [ebp - 0x68]
xor ecx, 0
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
jmp 0x1001ca2c
movsx edx, word [ebp - 0x30]
test edx, edx
je 0x1001c95d
cmp dword [ebp - 0x64], 0
je 0x1001c95d
xor eax, eax
mov dword [ebp - 0x494], 1
mov dword [ebp - 0x490], eax
jmp 0x1001c968
xorps xmm0, xmm0
movlpd qword [ebp - 0x494], xmm0
mov ecx, dword [0x100c30bc]
cmp ecx, dword [ebp - 0x490]
jl 0x1001ca2c
jg 0x1001c98e
mov edx, dword [0x100c30b8]
cmp edx, dword [ebp - 0x494]
jbe 0x1001ca2c
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
movsx eax, byte [0x100c3075]
cdq
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], esi
cmp dword [0x100c30f8], 0
jne 0x1001c9ce
mov dword [ebp - 0x1f8], 1
jmp 0x1001c9d8
mov dword [ebp - 0x1f8], 0
mov edx, dword [ebp - 0x4c]
not edx
movzx eax, word [0x100c30b0]
imul edx, eax
movsx ecx, word [0x100c3090]
sub ecx, dword [ebp - 0x1f8]
xor edx, ecx
jne 0x1001ca06
mov edx, 1
mov word [ebp - 0xa0], dx
jmp 0x1001ca0f
xor eax, eax
mov word [ebp - 0xa0], ax
mov cx, word [ebp - 0xa0]
mov word [ebp - 0x1c], cx
mov edx, dword [0x100c30f8]
sub edx, 0x71b2c2cf
mov byte [0x100c3027], dl
movsx eax, word [ebp - 0x2c]
cdq
push edx
push eax
call fcn.1004e550
add esp, 8
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x1001cbd4
movsx eax, word [ebp - 0x30]
test eax, eax
je 0x1001caf9
movsx ecx, word [ebp - 0x28]
test ecx, ecx
je 0x1001ca75
mov edx, dword [0x100c30f0]
mov eax, dword [0x100c30f4]
mov dword [ebp - 0x49c], edx
mov dword [ebp - 0x498], eax
jmp 0x1001ca87
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x49c], ecx
mov dword [ebp - 0x498], edx
mov ax, word [ebp - 0x49c]
mov word [ebp - 0x34], ax
mov ecx, dword [ebp - 0x58]
xor ecx, 0xf552df3c
mov word [ebp - 0x18], cx
movsx eax, byte [str.NDisablePerfBackoff]
cdq
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, eax
movsx eax, byte [ebp - 0x12]
cdq
add eax, dword [0x100c30d8]
xor ecx, eax
mov dword [ebp - 0x7c], ecx
imul edx, dword [ebp - 0x4c], 0x8d8ccfcb
xor eax, eax
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
add ecx, edx
adc esi, eax
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], esi
mov edx, dword [ebp - 0x38]
xor edx, 0x8972
mov word [ebp - 0x30], dx
jmp 0x1001cbcf
movsx eax, byte [ebp - 0x13]
not eax
movzx ecx, word [0x100c30a0]
cmp eax, ecx
jl 0x1001cb16
mov dword [ebp - 0x1fc], 1
jmp 0x1001cb20
mov dword [ebp - 0x1fc], 0
mov edx, dword [ebp - 0x1fc]
not edx
test edx, edx
jne 0x1001cb39
movsx eax, byte [ebp - 0x13]
cmp dword [ebp - 0x58], eax
jne 0x1001cbcf
movsx eax, byte [ebp - 0x11]
cdq
push 0x24fb1
push 0xd05cee73
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x78], eax
movzx ecx, word [ebp - 0x18]
imul edx, ecx, 0xc0
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
sub eax, 0x2d91ba94
sbb ecx, 0
push ecx
push eax
mov edx, dword [0x100c3084]
push edx
mov eax, dword [0x100c3080]
push eax
call fcn.1008eb70
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
movsx ecx, word [0x100c30fc]
movzx edx, byte [0x100c3063]
imul ecx, edx
mov word [0x100c30fc], cx
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov edx, dword [0x100c30dc]
push edx
mov edx, dword [0x100c30d8]
push edx
push ecx
push eax
call fcn.1008eb70
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
jmp 0x1001cc88
mov eax, 0x4c1ce273
test eax, eax
je 0x1001cc88
movzx eax, word [ebp - 0x18]
sub eax, 0xb6
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
movsx ecx, word [ebp - 0x30]
sub ecx, dword [ebp - 0x38]
movzx edx, word [0x100c30a0]
sub ecx, edx
mov esi, ecx
movzx eax, word [ebp - 0x18]
cdq
mov edi, eax
mov ebx, edx
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [0x100c30d0]
mov dword [ebp - 0x600], esi
mov esi, dword [0x100c30d4]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
push edx
push eax
push ebx
push edi
call fcn.1008eb70
mov esi, dword [ebp - 0x600]
sub esi, eax
mov dword [0x100c30f8], esi
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [0x100c30d8], edx
mov dword [0x100c30dc], eax
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
add ecx, dword [0x100c30d8]
adc edx, dword [0x100c30dc]
mov eax, dword [0x100c30e8]
mov esi, dword [0x100c30ec]
add eax, ecx
adc esi, edx
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], esi
mov ecx, dword [0x100c3b38]
mov dword [ebp - 0xb4], ecx
movsx edx, word [ebp - 0x1c]
cmp edx, dword [ebp - 0x64]
jae 0x1001cda8
mov ax, word [ebp - 0x20]
mov ecx, 2
shl ecx, 2
mov word [ecx + 0x100c3b40], ax
mov edx, dword [0x100c30c0]
mov eax, dword [0x100c30c4]
mov dword [ebp - 0xb8c], eax
mov ecx, dword [ebp - 0x74]
sub ecx, edx
mov word [0x100c308c], cx
movzx eax, word [ebp - 0x18]
cdq
mov ecx, eax
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0xb90], eax
sub ecx, edx
movzx eax, word [ebp - 0x18]
cdq
add eax, ecx
mov word [ebp - 0x18], ax
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
mov dword [ebp - 0xb94], edx
and ecx, 0x572e
mov byte [str.NDisablePerfBackoff], cl
movsx eax, word [0x100c3090]
test eax, eax
jne 0x1001cd2b
mov dword [ebp - 0x200], 1
jmp 0x1001cd35
mov dword [ebp - 0x200], 0
mov eax, dword [ebp - 0x200]
xor eax, 0x16921d0
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
movsx eax, word [ebp - 0x30]
cdq
mov ebx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0xb98], ecx
add ebx, eax
movsx eax, word [ebp - 0x28]
cdq
mov edx, dword [0x100c30e8]
mov ecx, dword [0x100c30ec]
mov dword [ebp - 0xb9c], ecx
add eax, edx
or ebx, eax
mov edx, dword [ebp - 0x64]
not edx
mov esi, edx
movzx eax, byte [0x100c3063]
cdq
mov ecx, dword [0x100c3120]
mov edi, dword [0x100c3124]
push edx
push eax
push edi
push ecx
call fcn.1008eb70
xor esi, eax
sub ebx, esi
mov byte [0x100c3062], bl
jmp 0x1001ce56
movsx edx, byte [str.NDisablePerfBackoff]
movsx eax, word [ebp - 0x2c]
cmp edx, eax
jl 0x1001ce56
movsx eax, word [0x100c3118]
cdq
add eax, 0x4c352f47
mov word [0x100c30b0], ax
mov dword [ebp - 0x38], 0xc0021ff6
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + 0x100c3c18]
cdq
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
or ecx, eax
or esi, edx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], esi
movsx eax, byte [ebp - 0x11]
cdq
add eax, dword [0x100c30d8]
adc edx, dword [0x100c30dc]
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
movzx edx, word [ebp - 0x34]
test edx, edx
je 0x1001ce33
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x4a4], eax
mov dword [ebp - 0x4a0], ecx
jmp 0x1001ce4a
mov edx, dword [0x100c30d8]
mov eax, dword [0x100c30dc]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x4a0], eax
mov cl, byte [ebp - 0x4a4]
mov byte [0x100c3027], cl
mov edx, dword [ebp - 0xb4]
add edx, 0x56b
mov dword [ebp - 0x608], edx
cmp dword [ebp - 0x38], 0
je 0x1001d0d4
mov dword [ebp - 0xac], 0x2c
jmp 0x1001ce8d
mov eax, dword [ebp - 0xac]
sub eax, 1
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0
jle 0x1001d0cf
mov dword [ebp - 0xb0], 0x975
movsx eax, word [0x100c3090]
add eax, 0xc347
cdq
mov dword [0x100c3100], eax
mov dword [0x100c3104], edx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xcb4], edx
add ecx, 0xa26867e5
mov word [ebp - 0x28], cx
movsx eax, word [0x100c3118]
test eax, eax
jne 0x1001cee9
mov dword [ebp - 0x204], 1
jmp 0x1001cef3
mov dword [ebp - 0x204], 0
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x64], ecx
mov byte [0x100c3027], 8
cmp dword [ebp - 0xb0], 0x7cf
jle 0x1001d0c1
mov ecx, dword [ebp - 0x64]
xor esi, esi
movzx eax, byte [0x100c303b]
cdq
mov edi, 0xdc8e73a
sub edi, eax
mov eax, 0xfbbc
sbb eax, edx
xor ecx, edi
xor esi, eax
mov dword [ebp - 0xa9c], ecx
mov dword [ebp - 0xa98], esi
mov ecx, dword [ebp - 0xa9c]
or ecx, dword [ebp - 0xa98]
jne 0x1001cf55
mov byte [ebp - 0x8c], 1
jmp 0x1001cf5c
mov byte [ebp - 0x8c], 0
mov dl, byte [ebp - 0x8c]
mov byte [ebp - 0x11], dl
movsx eax, word [0x100c3090]
test eax, eax
je 0x1001cf8a
mov ecx, dword [0x100c3110]
mov edx, dword [0x100c3114]
mov dword [ebp - 0x4ac], ecx
mov dword [ebp - 0x4a8], edx
jmp 0x1001cf9a
mov eax, dword [ebp - 0x4c]
cdq
mov dword [ebp - 0x4ac], eax
mov dword [ebp - 0x4a8], edx
mov eax, dword [ebp - 0x4ac]
mov dword [0x100c3108], eax
mov ecx, dword [0x100c3100]
mov edx, dword [0x100c3104]
mov dword [0x100c3120], ecx
mov dword [0x100c3124], edx
movzx eax, word [0x100c30e0]
add eax, 0x8a86
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x4c], 0
jne 0x1001cfe6
xor ecx, ecx
mov dword [ebp - 0x4b4], 1
mov dword [ebp - 0x4b0], ecx
jmp 0x1001cff1
xorps xmm0, xmm0
movlpd qword [ebp - 0x4b4], xmm0
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x4b0]
push ecx
mov ecx, dword [ebp - 0x4b4]
push ecx
push eax
push edx
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movsx eax, word [ebp - 0x24]
not eax
movzx edx, word [0x100c30e0]
sub eax, edx
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0xaa4], ecx
mov dword [ebp - 0xaa0], esi
mov eax, dword [ebp - 0xaa4]
or eax, dword [ebp - 0xaa0]
jne 0x1001d052
xor ecx, ecx
mov dword [ebp - 0xab4], 1
mov dword [ebp - 0xab0], ecx
jmp 0x1001d05d
xorps xmm0, xmm0
movlpd qword [ebp - 0xab4], xmm0
movsx edx, word [ebp - 0x1c]
test edx, edx
jne 0x1001d079
xor eax, eax
mov dword [ebp - 0xaac], 1
mov dword [ebp - 0xaa8], eax
jmp 0x1001d084
xorps xmm0, xmm0
movlpd qword [ebp - 0xaac], xmm0
mov ecx, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov dword [ebp - 0xcb8], edx
and ecx, dword [ebp - 0xaac]
mov eax, dword [0x100c30d8]
sub eax, ecx
and eax, dword [ebp - 0xab4]
mov word [ebp - 0x34], ax
mov ecx, dword [ebp - 0xb0]
sub ecx, 1
mov dword [ebp - 0xb0], ecx
jmp 0x1001cf03
mov edx, dword [ebp - 0x64]
add edx, 1
mov dword [ebp - 0x64], edx
jmp 0x1001ce7e
jmp 0x1001d1e9
mov eax, 0x80b3967e
or eax, 0xb3e4
je 0x1001d1e9
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
add ecx, 0xf8
adc esi, 0
movsx eax, word [ebp - 0x24]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov word [ebp - 0x24], ax
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
sub edx, 0x5492e7a1
sbb eax, 0
mov dword [0x100c30a8], edx
mov dword [0x100c30ac], eax
mov ecx, dword [ebp - 0x64]
add ecx, dword [0x100c30f8]
mov dword [0x100c30f8], ecx
movsx eax, word [0x100c30fc]
cdq
mov ecx, dword [ebp - 0x44]
add eax, dword [ebp - 0x48]
adc edx, ecx
mov dword [ebp - 0xabc], eax
mov dword [ebp - 0xab8], edx
mov edx, dword [ebp - 0xabc]
or edx, dword [ebp - 0xab8]
jne 0x1001d171
xor eax, eax
mov dword [ebp - 0x4bc], 1
mov dword [ebp - 0x4b8], eax
jmp 0x1001d17c
xorps xmm0, xmm0
movlpd qword [ebp - 0x4bc], xmm0
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
or ecx, eax
or esi, edx
add ecx, dword [ebp - 0x4bc]
adc esi, dword [ebp - 0x4b8]
movsx eax, byte [str.NDisablePerfBackoff]
movzx edx, word [0x100c30a0]
movsx edi, word [ebp - 0x2c]
not edi
sub edx, edi
not edx
sub eax, edx
cdq
xor ecx, eax
xor esi, edx
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], esi
xor eax, eax
mov dword [0x100c30c8], 0x5ad8
mov dword [0x100c30cc], eax
mov ecx, dword [0x100c30f0]
sub ecx, 0xe3d05769
mov word [ebp - 0x24], cx
mov edx, dword [ebp - 0xb4]
add edx, 0x4f1
mov dword [ebp - 0x604], edx
mov eax, dword [0x100c30d0]
mov ecx, dword [0x100c30d4]
mov dword [ebp - 0xac4], eax
mov dword [ebp - 0xac0], ecx
mov edx, dword [ebp - 0xac4]
or edx, dword [ebp - 0xac0]
je 0x1001d2b4
xor eax, eax
mov dword [0x100c30c8], 0xca79
mov dword [0x100c30cc], eax
mov eax, dword [ebp - 0x7c]
cdq
push 0x7d593
push 0x463ebeaa
push edx
push eax
call fcn.1008eb70
mov ecx, dword [ebp - 0x64]
add ecx, eax
mov dword [ebp - 0x64], ecx
mov edx, 2
imul eax, edx, 0x4522
mov cl, byte [eax + 0x100c3c88]
mov byte [ebp - 0x11], cl
mov edx, dword [0x100c30a8]
mov eax, dword [0x100c30ac]
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
movzx edx, byte [0x100c3062]
movsx eax, byte [str.NDisablePerfBackoff]
sub edx, eax
mov byte [0x100c3062], dl
movsx ecx, word [ebp - 0x24]
movsx edx, word [ebp - 0x28]
add ecx, edx
mov word [ebp - 0x24], cx
jmp 0x1001d382
movzx eax, word [0x100c30e0]
cdq
mov dword [ebp - 0xacc], eax
mov dword [ebp - 0xac8], edx
mov eax, dword [0x100c3084]
cmp eax, dword [ebp - 0xac8]
ja 0x1001d382
jb 0x1001d2ed
mov ecx, dword [0x100c3080]
cmp ecx, dword [ebp - 0xacc]
jae 0x1001d382
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xcbc], edx
sub ecx, eax
movsx eax, word [ebp - 0x1c]
movsx edx, word [ebp - 0x2c]
sub eax, edx
cdq
sub ecx, eax
mov word [ebp - 0x18], cx
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, dword [0x100c30b8]
sub ecx, eax
mov eax, dword [0x100c30bc]
sbb eax, edx
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], eax
movzx ecx, byte [0x100c303b]
add ecx, dword [0x100c3108]
or ecx, dword [0x100c3108]
mov dword [0x100c3108], ecx
mov dword [ebp - 0x64], 2
mov edx, dword [0x100c30d8]
add edx, 0x6e
mov word [ebp - 0x20], dx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
push ecx
push eax
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x6c]
push eax
call fcn.1008eb70
mov ecx, dword [ebp - 0x6c]
sub ecx, eax
mov eax, dword [ebp - 0x68]
sbb eax, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0xb4]
add ecx, 0x5c1
mov dword [ebp - 0xa4], ecx
mov byte [0x100c3027], 4
movsx eax, word [0x100c3088]
add eax, 0xa9
cdq
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
movsx edx, byte [0x100c3075]
sub edx, 0x74d6
mov word [ebp - 0x24], dx
mov dword [ebp - 0x38], 0x4858693a
movsx eax, word [ebp - 0x28]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
sub ecx, eax
sbb esi, edx
movzx eax, byte [0x100c3063]
sub eax, dword [0x100c3108]
not eax
cdq
or ecx, eax
or esi, edx
mov dword [ebp - 0xad4], ecx
mov dword [ebp - 0xad0], esi
mov edx, dword [ebp - 0xad4]
or edx, dword [ebp - 0xad0]
jne 0x1001d41a
mov dword [ebp - 0x208], 1
jmp 0x1001d424
mov dword [ebp - 0x208], 0
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [0x100c30e8]
mov esi, dword [0x100c30ec]
sub ecx, eax
sbb esi, edx
not ecx
not esi
movsx eax, word [ebp - 0x1c]
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0xadc], ecx
mov dword [ebp - 0xad8], esi
mov edx, dword [ebp - 0xadc]
or edx, dword [ebp - 0xad8]
jne 0x1001d46c
mov dword [ebp - 0x20c], 1
jmp 0x1001d476
mov dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x208]
imul eax, dword [ebp - 0x20c]
mov word [ebp - 0x24], ax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
push 0xd9959
push 0x855f3edc
push edx
push ecx
call fcn.1008eb70
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
movsx eax, byte [0x100c3027]
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 4
ja case.default.0x1001d4cc
mov ecx, dword [ebp - 0x210]
jmp dword [ecx*4 + 0x10025c60]
movzx eax, word [ebp - 0x18]
sub eax, 0x7cc1
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov dl, byte [str.NDisablePerfBackoff]
mov byte [0x100c3075], dl
mov eax, dword [ebp - 0x58]
sub eax, 0x46e2e895
cdq
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x64], 0
jne 0x1001d515
mov dword [ebp - 0x214], 1
jmp 0x1001d51f
mov dword [ebp - 0x214], 0
movsx eax, byte [ebp - 0x12]
imul eax, dword [ebp - 0x214]
cdq
xor ecx, ecx
mov esi, dword [0x100c3100]
mov edi, dword [0x100c3104]
add esi, dword [ebp - 0x38]
adc edi, ecx
push edi
push esi
push edx
push eax
call fcn.1008eb70
mov dword [0x100c310c], eax
movsx eax, byte [0x100c3027]
cdq
mov ecx, eax
mov esi, edx
xor ecx, dword [0x100c3080]
xor esi, dword [0x100c3084]
movsx eax, byte [0x100c3027]
cdq
mov edi, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x80]
add edi, eax
adc ebx, edx
add ecx, edi
adc esi, ebx
mov dword [0x100c30d8], ecx
mov dword [0x100c30dc], esi
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
push 0
push 0xef
push eax
push edx
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x13]
cdq
add ecx, eax
adc esi, edx
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], esi
jmp case.default.0x1001d4cc
mov edx, dword [ebp - 0x38]
xor eax, eax
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
push eax
push edx
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
movsx edx, word [ebp - 0x1c]
add edx, 0x7d69
movsx eax, byte [ebp - 0x13]
imul eax, edx
mov byte [ebp - 0x13], al
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
sub ecx, 0xa5a49f62
sbb edx, 0
mov eax, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
sub eax, ecx
sbb esi, edx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], esi
movsx ecx, byte [ebp - 0x13]
imul edx, ecx, 0x99b7
mov byte [0x100c303b], dl
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
push 0
push 0x7e777a8
push ecx
push eax
call fcn.1008eb70
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
mov dword [ebp - 0x58], 0x762
jmp case.default.0x1001d4cc
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x38], edx
mov ecx, dword [0x100c30c0]
mov edx, dword [0x100c30c4]
mov dword [ebp - 0xcf8], edx
sub ecx, 0x7b8a1aa4
mov eax, dword [0x100c3108]
cdq
or eax, ecx
mov dword [0x100c3108], eax
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xae0], ecx
mov edx, dword [ebp - 0xae4]
or edx, dword [ebp - 0xae0]
jne 0x1001d6ba
mov dword [ebp - 0x218], 1
jmp 0x1001d6c4
mov dword [ebp - 0x218], 0
movsx eax, word [ebp - 0x24]
add eax, dword [ebp - 0x218]
cdq
mov ecx, eax
mov esi, edx
movsx eax, byte [str.NDisablePerfBackoff]
cdq
add eax, dword [ebp - 0x6c]
adc edx, dword [ebp - 0x68]
and ecx, eax
and esi, edx
mov dword [0x100c3080], ecx
mov dword [0x100c3084], esi
movzx edx, word [ebp - 0x18]
movsx eax, word [0x100c308c]
add edx, eax
mov word [ebp - 0x18], dx
movsx eax, word [0x100c3090]
not eax
cdq
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov word [ebp - 0x18], ax
jmp case.default.0x1001d4cc
movsx edx, word [0x100c308c]
sar edx, 3
mov word [ebp - 0x20], dx
mov eax, dword [ebp - 0x58]
cdq
sub eax, dword [ebp - 0x74]
mov dword [ebp - 0x58], eax
movsx eax, word [0x100c30fc]
imul ecx, eax, 0x2cb376ce
mov word [0x100c30e0], cx
movzx edx, word [ebp - 0x34]
movsx eax, word [0x100c3088]
sub edx, eax
mov word [ebp - 0x34], dx
mov ecx, 1
mov word [ebp - 0x1c], cx
jmp case.default.0x1001d4cc
movsx edx, word [0x100c30fc]
sub edx, dword [ebp - 0x64]
movsx eax, word [0x100c30fc]
add eax, edx
mov word [0x100c30fc], ax
mov byte [0x100c3075], 8
movsx eax, word [0x100c3090]
cdq
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xcc0], edx
add eax, ecx
mov word [0x100c3090], ax
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
add ecx, eax
adc esi, edx
mov edx, dword [0x100c3100]
mov eax, dword [0x100c3104]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov dword [0x100c3100], eax
mov dword [0x100c3104], edx
movzx eax, word [ebp - 0x18]
cdq
add eax, 0x5fbac935
adc edx, 0xe7eae
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
imul ecx, dword [ebp - 0xa4], 0x3aa
mov edx, dword [ebp - 0xa4]
sub edx, dword [ebp - 0x604]
sub ecx, edx
mov eax, dword [ebp - 0xa4]
or eax, 0x1ec
mov edx, dword [ebp - 0x608]
or edx, dword [ebp - 0xa4]
imul eax, edx
cmp ecx, eax
je 0x1001dfa2
mov dword [ebp - 0xb8], 0x11a5
movsx eax, byte [ebp - 0x13]
cdq
and eax, dword [0x100c30d8]
and edx, dword [0x100c30dc]
mov ecx, 0x66e986a6
sub ecx, eax
mov esi, 0xf27b9
sbb esi, edx
not ecx
not esi
movsx eax, byte [str.NDisablePerfBackoff]
movzx edx, word [ebp - 0x18]
xor eax, edx
movzx edx, byte [0x100c3063]
xor edx, dword [0x100c30f8]
add eax, edx
cdq
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c3108], eax
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
sub ecx, 0xe80b6402
sbb esi, 0x1c19b
movzx eax, word [0x100c30a0]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov word [0x100c30a0], ax
mov edx, dword [0x100c30d8]
add edx, 0x91c29965
mov eax, dword [0x100c30dc]
adc eax, 0
mov dword [0x100c3120], edx
mov dword [0x100c3124], eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
push 0x27b33
push 0x2eb1be8c
push edx
push ecx
call fcn.1008eb70
mov word [0x100c3088], ax
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x68]
push edx
mov edx, dword [ebp - 0x6c]
push edx
push ecx
push eax
call fcn.1008eb70
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], esi
cmp dword [ebp - 0xb8], 0x110e
jle 0x1001df0a
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
movzx eax, word [ebp - 0x34]
cdq
mov dword [ebp - 0xaec], ecx
mov dword [ebp - 0xae8], esi
mov dword [ebp - 0xaf4], eax
mov dword [ebp - 0xaf0], edx
mov edx, dword [ebp - 0xae8]
cmp edx, dword [ebp - 0xaf0]
jb 0x1001dcbd
ja 0x1001d972
mov eax, dword [ebp - 0xaec]
cmp eax, dword [ebp - 0xaf4]
jbe 0x1001dcbd
mov byte [0x100c3062], 4
mov ecx, dword [ebp - 0x74]
add ecx, 0x5bcf9322
mov eax, dword [ebp - 0x4c]
cdq
add eax, ecx
mov dword [ebp - 0x4c], eax
imul edx, dword [0x100c310c], 0x5490dcff
mov dword [ebp - 0x78], edx
mov eax, 0xdb23
mov word [0x100c30b0], ax
movzx ecx, word [ebp - 0x18]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov word [ebp - 0x18], cx
movzx ax, byte [0x100c3063]
mov word [ebp - 0x20], ax
movzx ecx, byte [0x100c3062]
mov dword [ebp - 0x21c], ecx
cmp dword [ebp - 0x21c], 4
ja case.default.0x1001d9dd
mov edx, dword [ebp - 0x21c]
jmp dword [edx*4 + 0x10025c74]
mov eax, 1
imul ecx, eax, 0x96a
movzx edx, byte [ecx + 0x100f8c58]
mov eax, dword [0x100c310c]
sub eax, edx
mov dword [0x100c310c], eax
movsx eax, word [0x100c30fc]
cdq
mov ecx, eax
and ecx, 0x65279d2c
movsx eax, word [ebp - 0x28]
cdq
add eax, ecx
mov word [ebp - 0x28], ax
movzx eax, byte [0x100c3062]
cdq
mov edx, dword [0x100c30e8]
mov ecx, dword [0x100c30ec]
mov dword [ebp - 0xcc4], ecx
sub eax, edx
mov byte [0x100c3062], al
mov dx, word [0x100c308c]
add dx, 1
mov word [0x100c308c], dx
movsx eax, word [ebp - 0x28]
movsx ecx, word [0x100c3090]
sub eax, ecx
mov word [ebp - 0x28], ax
movsx edx, word [ebp - 0x30]
sub edx, 0x747fff1
mov byte [0x100c3027], dl
jmp case.default.0x1001d9dd
mov eax, dword [ebp - 0x78]
sub eax, 0x2d
mov byte [0x100c3063], al
mov eax, dword [0x100c30f8]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x6c]
adc esi, dword [ebp - 0x68]
mov eax, dword [0x100c30f8]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [0x100c30f8], eax
movzx eax, word [ebp - 0x18]
sar eax, 2
cdq
mov dword [0x100c30c0], eax
mov dword [0x100c30c4], edx
movsx eax, byte [ebp - 0x13]
cdq
push 0x45610
push 0xee385a1e
push edx
push eax
call fcn.1008eb70
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
push 0
push 0xeceb
push eax
push edx
call fcn.1008eb70
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
jmp case.default.0x1001d9dd
mov ecx, dword [0x100c30c8]
mov edx, dword [0x100c30cc]
mov eax, dword [0x100c3104]
add ecx, dword [0x100c3100]
adc edx, eax
mov eax, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
add eax, ecx
adc esi, edx
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], esi
mov ecx, dword [0x100c3100]
mov edx, dword [0x100c3104]
add ecx, 0xea6
adc edx, 0
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], edx
movsx eax, word [ebp - 0x28]
cdq
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov ecx, eax
movsx eax, word [ebp - 0x28]
cdq
sub eax, ecx
mov word [ebp - 0x28], ax
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
movzx ecx, word [ebp - 0x20]
imul ecx, dword [ebp - 0x7c]
movzx edx, word [ebp - 0x20]
add edx, ecx
mov word [ebp - 0x20], dx
mov ax, word [ebp - 0x2c]
mov word [0x100c3118], ax
jmp case.default.0x1001d9dd
mov ecx, dword [ebp - 0x38]
shl ecx, 1
xor edx, edx
mov dword [0x100c30c0], ecx
mov dword [0x100c30c4], edx
movsx eax, word [ebp - 0x28]
imul ecx, eax, 0x94ab2688
mov byte [0x100c3075], cl
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
mov dword [ebp - 0xcc8], eax
add edx, 0x32
mov word [ebp - 0x24], dx
movsx ecx, word [ebp - 0x28]
test ecx, ecx
je 0x1001dc03
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0x424], edx
mov dword [ebp - 0x420], eax
jmp 0x1001dc1b
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x420]
mov dword [0x100c3120], eax
mov dword [0x100c3124], ecx
movsx edx, word [0x100c3088]
mov dword [ebp - 0x4c], edx
jmp case.default.0x1001d9dd
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
push 0
push 0xd9
push ecx
push eax
call fcn.1008eb70
mov dword [ebp - 0x64], eax
movzx eax, word [ebp - 0x18]
cdq
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0xcd0], ecx
add eax, edx
mov word [ebp - 0x18], ax
movzx edx, word [0x100c30a0]
add edx, 0x45d7ad5b
mov word [ebp - 0x18], dx
movsx eax, word [ebp - 0x28]
movzx ecx, byte [0x100c3063]
and eax, ecx
mov byte [ebp - 0x13], al
movzx eax, word [0x100c30e0]
add eax, 0x4190997f
cdq
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
movsx edx, word [ebp - 0x30]
sub edx, 0x3ea9672b
mov dword [0x100c30f8], edx
jmp 0x1001def6
cmp dword [0x100c30f8], 0
je 0x1001de84
movzx eax, word [0x100c30e0]
cdq
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov word [0x100c30e0], ax
movsx eax, byte [0x100c3027]
cdq
mov edx, dword [ebp - 0x74]
sub edx, eax
mov byte [str.NDisablePerfBackoff], dl
mov ecx, dword [0x100c30b8]
not ecx
mov esi, dword [0x100c30bc]
not esi
movsx eax, word [ebp - 0x28]
cdq
and ecx, eax
and esi, edx
mov dword [ebp - 0xafc], ecx
mov dword [ebp - 0xaf8], esi
mov edx, dword [ebp - 0xafc]
or edx, dword [ebp - 0xaf8]
jne 0x1001dd47
xor eax, eax
mov dword [ebp - 0x4c4], 1
mov dword [ebp - 0x4c0], eax
jmp 0x1001dd52
xorps xmm0, xmm0
movlpd qword [ebp - 0x4c4], xmm0
movsx eax, byte [0x100c3027]
movzx ecx, word [ebp - 0x18]
add eax, ecx
cdq
mov esi, eax
mov edi, edx
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
xor edx, dword [ebp - 0x74]
xor eax, dword [ebp - 0x70]
not edx
not eax
or esi, edx
or edi, eax
mov ecx, dword [ebp - 0x38]
xor edx, edx
mov eax, dword [0x100c30d4]
sub ecx, dword [0x100c30d0]
sbb edx, eax
not ecx
not edx
push edx
push ecx
mov ecx, dword [ebp - 0x4c0]
push ecx
mov edx, dword [ebp - 0x4c4]
push edx
call fcn.1008eb70
sub esi, eax
sbb edi, edx
mov dword [ebp - 0xb04], esi
mov dword [ebp - 0xb00], edi
mov eax, dword [ebp - 0xb04]
or eax, dword [ebp - 0xb00]
jne 0x1001ddd2
mov dword [ebp - 0x220], 1
jmp 0x1001dddc
mov dword [ebp - 0x220], 0
mov ecx, dword [ebp - 0x220]
mov dword [0x100c310c], ecx
mov edx, dword [0x100c30c0]
mov eax, dword [0x100c30c4]
mov ecx, dword [ebp - 0x5c]
sub edx, dword [ebp - 0x60]
sbb eax, ecx
mov ecx, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
add ecx, edx
adc esi, eax
mov dword [0x100c30c0], ecx
mov dword [0x100c30c4], esi
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
add edx, 0x38ea4f99
adc eax, 0x5eae4
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], eax
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
jne 0x1001de42
mov dword [ebp - 0x224], 1
jmp 0x1001de4c
mov dword [ebp - 0x224], 0
mov edx, dword [0x100c30a8]
mov eax, dword [0x100c30ac]
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov ecx, eax
movsx edx, byte [ebp - 0x11]
mov eax, dword [ebp - 0x224]
sub eax, edx
not eax
cdq
xor ecx, eax
not ecx
mov word [0x100c30e0], cx
jmp 0x1001def6
mov eax, dword [ebp - 0x6c]
not eax
mov ecx, dword [ebp - 0x68]
not ecx
mov dword [ebp - 0x664], eax
mov dword [ebp - 0x660], ecx
mov edx, dword [ebp - 0x664]
or edx, dword [ebp - 0x660]
je 0x1001def6
mov dword [0x100c3108], 8
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
push 0x482b6
push 0xd1b07d23
push ecx
push eax
call fcn.1008eb70
mov word [ebp - 0x1c], ax
mov dx, word [ebp - 0x6c]
mov word [ebp - 0x20], dx
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0xcd4], ecx
mov word [ebp - 0x30], ax
movsx edx, word [0x100c3090]
not edx
mov byte [ebp - 0x12], dl
mov eax, dword [ebp - 0xb8]
sub eax, 1
mov dword [ebp - 0xb8], eax
jmp 0x1001d919
mov dword [0x100c3108], 0x6e08
movzx ecx, word [0x100c30b0]
add ecx, 0xd100
mov byte [0x100c3027], cl
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xca4], eax
sub edx, 0xea5b7c8a
mov word [ebp - 0x1c], dx
movsx eax, byte [0x100c3027]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov ecx, eax
movsx eax, byte [0x100c3027]
cdq
xor eax, ecx
mov byte [0x100c3027], al
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x70]
sbb ecx, edx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0xd4c]
sub edx, 0x40
push edx
mov eax, dword [ebp + 8]
add eax, 0x40
push eax
mov ecx, 1
imul edx, ecx, 0
lea eax, [ebp + edx - 0x14b0]
push eax
call fcn.1008f990
add esp, 0xc
mov dword [ebp - 0x78], 1
mov eax, dword [0x100c3108]
not eax
cdq
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
sub ecx, dword [0x100c30b8]
sbb edx, dword [0x100c30bc]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
xor eax, eax
mov dword [0x100c30b8], 0x863e
mov dword [0x100c30bc], eax
movzx eax, word [0x100c30a0]
cdq
mov ecx, eax
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
mov dword [ebp - 0xccc], eax
add ecx, edx
movzx eax, word [0x100c30a0]
cdq
add eax, ecx
mov word [0x100c30a0], ax
movsx ecx, byte [ebp - 0x11]
test ecx, ecx
je 0x1001e026
movzx edx, word [ebp - 0x34]
mov dword [ebp - 0x228], edx
jmp 0x1001e030
movsx eax, word [ebp - 0x30]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
cdq
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0
je 0x1001e062
cmp dword [ebp - 0x22c], 1
je 0x1001e0b8
jmp 0x1001e16f
mov edx, 8
imul eax, edx, 0x20e
mov ecx, dword [0x100c30d8]
mov edx, dword [0x100c30dc]
mov dword [eax + 0x10118ca8], ecx
mov dword [eax + 0x10118cac], edx
mov dword [ebp - 0x64], 4
mov eax, dword [ebp - 0x58]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xcb0], eax
add ecx, edx
mov eax, dword [ebp - 0x58]
cdq
sub eax, ecx
mov dword [ebp - 0x58], eax
movsx ecx, byte [ebp - 0x11]
mov dword [0x100c310c], ecx
jmp 0x1001e16f
movsx edx, word [ebp - 0x28]
sub edx, 0x2d9e
mov eax, dword [0x100c3108]
sub eax, edx
mov dword [0x100c3108], eax
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
jne 0x1001e0e2
mov dword [ebp - 0x230], 1
jmp 0x1001e0ec
mov dword [ebp - 0x230], 0
movsx eax, byte [str.NDisablePerfBackoff]
add eax, dword [ebp - 0x230]
cdq
mov ecx, dword [0x100c3080]
and ecx, 0xf78f
mov esi, dword [0x100c3084]
and esi, 0
xor eax, ecx
xor edx, esi
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
movsx edx, word [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
sub eax, edx
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov dword [ebp - 0x38], ecx
movsx eax, word [ebp - 0x2c]
cdq
mov ecx, eax
xor ecx, dword [0x100c3080]
movsx eax, word [ebp - 0x2c]
cdq
sub eax, ecx
mov word [ebp - 0x2c], ax
mov edx, dword [0x100c3100]
mov eax, dword [0x100c3104]
sub edx, 1
sbb eax, 0
mov dword [0x100c3100], edx
mov dword [0x100c3104], eax
movsx eax, word [0x100c3090]
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xd4c]
mov dword [ebp - 0x268], ecx
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
push 0
push 0xe8
push eax
push edx
call fcn.1008eb70
mov word [ebp - 0x34], ax
mov ecx, dword [0x100c30d8]
add ecx, 0x8b
mov byte [ebp - 0x11], cl
movzx eax, byte [0x100c3062]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov byte [0x100c3062], al
mov eax, dword [ebp - 0x58]
cdq
mov dword [0x100c30c0], eax
mov dword [0x100c30c4], edx
mov dx, word [0x100c30e0]
add dx, 1
mov word [0x100c30e0], dx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
push 0
push 0xb0ba244f
push ecx
push eax
call fcn.1008eb70
mov byte [ebp - 0x13], al
mov ecx, 0x3e
mov esi, dword [ebp - 0x268]
lea edi, [ebp - 0xf20]
rep movsd dword es:[edi], dword [esi]
jmp 0x1001e223
jmp 0x1001e239
cmp dword [ebp - 0xf20], 0x4550
jne 0x10025b61
mov edx, dword [0x100c30f0]
or edx, dword [0x100c30f4]
je 0x1001e268
call dword [sym.imp.KERNEL32.dll_GetLargePageMinimum]
mov word [0x100c308c], ax
jmp 0x1001e417
mov eax, dword [0x100c30b8]
or eax, dword [0x100c30bc]
je 0x1001e2a8
movsx ecx, word [0x100c30fc]
sar ecx, 3
mov word [ebp - 0x28], cx
mov edx, dword [0x100c3108]
add edx, 0x4edecbc7
mov byte [ebp - 0x13], dl
mov eax, dword [ebp - 0x4c]
add eax, dword [0x100c30f8]
mov ecx, dword [ebp - 0x4c]
add ecx, eax
mov dword [ebp - 0x4c], ecx
jmp 0x1001e417
movzx edx, word [ebp - 0x18]
test edx, edx
je 0x1001e336
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [ebp - 0x66c], eax
mov dword [ebp - 0x668], ecx
mov edx, dword [ebp - 0x66c]
or edx, dword [ebp - 0x668]
je 0x1001e2f2
mov eax, dword [0x100c3120]
mov ecx, dword [0x100c3124]
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 0x4c8], ecx
jmp 0x1001e309
mov edx, dword [0x100c30e8]
mov eax, dword [0x100c30ec]
mov dword [ebp - 0x4cc], edx
mov dword [ebp - 0x4c8], eax
mov cx, word [ebp - 0x4cc]
mov word [0x100c30e0], cx
movzx eax, word [ebp - 0x20]
cdq
xor eax, 0x6c448d5b
mov byte [0x100c3062], al
mov edx, dword [ebp - 0x38]
xor eax, eax
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], eax
jmp 0x1001e417
movzx ecx, byte [0x100c3062]
test ecx, ecx
jne 0x1001e352
mov edx, 0xb935ff73
or edx, 0xd505e
je 0x1001e417
mov eax, dword [0x100c30b8]
add eax, 0xa806315d
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov dword [ebp - 0x38], ecx
movsx eax, word [0x100c308c]
not eax
movzx edx, byte [0x100c303b]
add eax, edx
cdq
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
mov ax, word [0x100c3b38]
mov word [0x100c30a0], ax
mov ecx, 0xa5111
mov dword [0x100c3100], 0x89eef7b7
mov dword [0x100c3104], ecx
movzx edx, word [0x100c30a0]
test edx, edx
jne 0x1001e3ba
mov dword [ebp - 0x234], 1
jmp 0x1001e3c4
mov dword [ebp - 0x234], 0
movzx eax, word [ebp - 0x34]
not eax
add eax, dword [ebp - 0x234]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [0x100c3118]
cdq
mov edi, dword [ebp - 0x50]
add eax, dword [ebp - 0x54]
adc edx, edi
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], esi
mov edx, dword [ebp - 0x38]
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0xcac], ecx
add eax, 0xf6f0
sub edx, eax
sub edx, dword [0x100c30d8]
mov word [0x100c30fc], dx
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
push 0
push 0xe3
push eax
push edx
call fcn.1008eb70
mov byte [str.NDisablePerfBackoff], al
movzx ecx, word [ebp - 0x34]
sar ecx, 3
mov byte [0x100c303b], cl
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xca8], eax
mov byte [ebp - 0x12], dl
mov ecx, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov dword [ebp - 0xcf4], edx
add ecx, 0xac377590
mov dword [ebp - 0x64], ecx
movzx eax, word [ebp - 0x18]
cdq
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov ecx, eax
movzx eax, word [ebp - 0x18]
cdq
sub eax, ecx
mov word [ebp - 0x18], ax
movsx eax, byte [str.NDisablePerfBackoff]
cdq
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov edx, dword [0x100c3b38]
mov dword [ebp - 0xbc], edx
movsx eax, word [ebp - 0x1c]
not eax
imul eax, dword [ebp - 0x78]
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x670], edx
mov eax, dword [ebp - 0x674]
or eax, dword [ebp - 0x670]
jne 0x1001e516
mov dword [ebp - 0x238], 1
jmp 0x1001e520
mov dword [ebp - 0x238], 0
movsx ecx, byte [0x100c3027]
test ecx, ecx
jne 0x1001e537
mov dword [ebp - 0x23c], 1
jmp 0x1001e541
mov dword [ebp - 0x23c], 0
mov eax, dword [ebp - 0x238]
add eax, dword [ebp - 0x23c]
not eax
cdq
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
sub edx, 1
sbb eax, 0
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x64]
and ecx, 0x86e1
movzx edx, word [0x100c30e0]
and edx, ecx
mov word [0x100c30e0], dx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 0xf1096b17
adc ecx, 0
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], ecx
mov edx, 2
mov word [ebp - 0x18], dx
mov eax, dword [ebp - 0xbc]
add eax, 0x64d
mov dword [ebp - 0x60c], eax
push 9
push 0xffffffffffffffbd
push 0xffffffffffffffd1
call fcn.10052870
add esp, 0xc
movsx eax, al
cdq
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
mov ecx, dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], ecx
jge 0x1001e66f
mov edx, dword [0x100c3080]
not edx
mov eax, dword [0x100c3084]
not eax
mov dword [ebp - 0x67c], edx
mov dword [ebp - 0x678], eax
mov ecx, dword [ebp - 0x67c]
or ecx, dword [ebp - 0x678]
je 0x1001e66f
movzx edx, word [ebp - 0x34]
imul eax, edx, 0x4880b179
mov word [0x100c3090], ax
mov ecx, dword [ebp - 0x78]
xor ecx, 0x910d484a
xor edx, edx
mov dword [0x100c3100], ecx
mov dword [0x100c3104], edx
movsx eax, word [ebp - 0x30]
not eax
cdq
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
movzx eax, byte [0x100c3063]
and eax, 0xc7
mov byte [str.NDisablePerfBackoff], al
mov ecx, 0xe0e89
mov dword [0x100c3098], 0xc93ea896
mov dword [0x100c309c], ecx
jmp 0x1001e77d
movsx edx, word [ebp - 0x2c]
cmp edx, dword [ebp - 0x38]
ja 0x1001e684
mov dword [ebp - 0x240], 1
jmp 0x1001e68e
mov dword [ebp - 0x240], 0
mov eax, dword [ebp - 0x240]
not eax
cmp eax, dword [ebp - 0x7c]
jge 0x1001e77d
movsx ecx, byte [str.NDisablePerfBackoff]
imul edx, ecx, 0xb9a0ad15
xor eax, eax
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
add ecx, edx
adc esi, eax
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], esi
movzx edx, byte [0x100c3063]
movsx eax, word [ebp - 0x1c]
add edx, eax
movzx ecx, byte [0x100c3063]
add ecx, edx
mov byte [0x100c3063], cl
mov edx, dword [0x100c3108]
sub edx, 0x8a
movsx eax, byte [ebp - 0x11]
imul eax, edx
mov byte [ebp - 0x11], al
mov ecx, dword [0x100c30b8]
or ecx, dword [0x100c30bc]
je 0x1001e70c
mov edx, dword [0x100c30f8]
mov dword [ebp - 0x244], edx
jmp 0x1001e719
movzx eax, word [0x100c30e0]
mov dword [ebp - 0x244], eax
mov cx, word [ebp - 0x244]
mov word [0x100c3090], cx
mov dl, byte [0x100c30a0]
mov byte [ebp - 0x12], dl
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x684], eax
mov dword [ebp - 0x680], ecx
mov edx, dword [ebp - 0x684]
or edx, dword [ebp - 0x680]
je 0x1001e75d
mov eax, dword [0x100c310c]
mov dword [ebp - 0x248], eax
jmp 0x1001e76a
movsx ecx, word [0x100c30fc]
mov dword [ebp - 0x248], ecx
mov edx, dword [ebp - 0x248]
xor eax, eax
mov dword [0x100c3100], edx
mov dword [0x100c3104], eax
mov ecx, dword [ebp - 0xbc]
add ecx, 0x6b2
mov dword [ebp - 0x254], ecx
movsx eax, byte [ebp - 0x11]
add eax, 0x61f9313a
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
add ecx, eax
adc esi, edx
mov dword [0x100c3110], ecx
mov dword [0x100c3114], esi
movzx eax, word [0x100c30b0]
cdq
mov ecx, dword [0x100c3120]
mov esi, dword [0x100c3124]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
mov byte [0x100c3063], 0x52
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [0x100c30c8], edx
mov dword [0x100c30cc], eax
movsx eax, word [ebp - 0x1c]
sub eax, 0x2b
cdq
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
mov ecx, dword [ebp - 0xbc]
add ecx, 0x745
mov dword [ebp - 0xc0], ecx
mov edx, dword [ebp - 0x38]
xor eax, eax
mov dword [ebp - 0x68c], edx
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x68c]
cmp ecx, dword [ebp - 0x6c]
jne 0x1001e84a
mov edx, dword [ebp - 0x688]
cmp edx, dword [ebp - 0x68]
jne 0x1001e84a
mov dword [ebp - 0x24c], 1
jmp 0x1001e854
mov dword [ebp - 0x24c], 0
cmp dword [ebp - 0x38], 0x29
jne 0x1001e866
mov dword [ebp - 0x250], 1
jmp 0x1001e870
mov dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x24c]
cmp eax, dword [ebp - 0x250]
jge 0x1001e925
push 0
push 0
call fcn.1004e550
add esp, 8
mov dword [0x100c3108], eax
cmp dword [0x100c3108], 0
jl 0x1001e8b3
jmp 0x1001e8a3
jmp 0x1001e8b1
jmp 0x1001e923
cmp dword [ebp - 0x7c], 0
je 0x1001e923
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xcf0], edx
mov word [0x100c30fc], cx
mov eax, dword [0x100c30f8]
cdq
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
movzx eax, byte [0x100c303b]
movsx ecx, byte [str.NDisablePerfBackoff]
imul eax, ecx
mov byte [0x100c303b], al
mov edx, dword [0x100c30b8]
sub edx, 0x4023
mov word [0x100c30e0], dx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
push ecx
push eax
mov edx, dword [0x100c30f4]
push edx
mov eax, dword [0x100c30f0]
push eax
call fcn.1008eb70
mov dword [ebp - 0x4c], eax
jmp 0x1001e978
movzx cx, byte [0x100c3063]
mov word [ebp - 0x18], cx
movsx edx, word [ebp - 0x1c]
imul eax, edx, 0x126ed917
movzx ecx, word [ebp - 0x20]
imul ecx, eax
mov word [ebp - 0x20], cx
mov byte [ebp - 0x13], 0xb7
movzx edx, byte [0x100c3062]
imul eax, edx, 0xb8
cdq
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov eax, dword [0x100c3120]
mov edx, dword [0x100c3124]
mov cl, 1
call fcn.1008ebb0
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0xc0]
sub eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0x254]
imul ecx, dword [ebp - 0x60c]
mov edx, dword [ebp - 0x254]
sub edx, dword [ebp - 0xc0]
sub ecx, edx
cmp eax, ecx
je 0x10025b61
movsx eax, byte [ebp - 0x12]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
xor ecx, ecx
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], ecx
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x258], 0
je 0x1001e9f3
mov edx, dword [ebp - 0x258]
push edx
call dword [sym.imp.USER32.dll_GetMenu]
mov dword [ebp - 0xcec], eax
call dword [sym.imp.USER32.dll_EndMenu]
mov dword [ebp - 0xce8], eax
mov eax, dword [0x100c3b38]
mov dword [ebp - 0xc4], eax
movsx ecx, word [ebp - 0x2c]
movsx edx, byte [ebp - 0x12]
cmp ecx, edx
je 0x1001ea16
mov dword [ebp - 0x25c], 1
jmp 0x1001ea20
mov dword [ebp - 0x25c], 0
movsx eax, word [ebp - 0x2c]
cmp eax, 0x2b
je 0x1001ea35
mov dword [ebp - 0x260], 1
jmp 0x1001ea3f
mov dword [ebp - 0x260], 0
mov ecx, dword [ebp - 0x25c]
cmp ecx, dword [ebp - 0x260]
jge 0x1001ec6f
xor edx, edx
mov dword [ebp - 0x48], 1
mov dword [ebp - 0x44], edx
movsx eax, word [ebp - 0x2c]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
sub ecx, eax
sbb esi, edx
mov dword [0x100c3110], ecx
mov dword [0x100c3114], esi
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xce4], eax
add edx, 0x56153fba
mov dword [ebp - 0x64], edx
movzx eax, word [0x100c30a0]
cdq
mov ecx, dword [ebp - 0x74]
sub ecx, eax
mov eax, dword [ebp - 0x70]
sbb eax, edx
mov edx, dword [ebp - 0x74]
sub edx, ecx
mov ecx, dword [ebp - 0x70]
sbb ecx, eax
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], ecx
movsx edx, word [ebp - 0x28]
mov eax, dword [ebp - 0x38]
add eax, edx
mov esi, eax
mov ecx, dword [0x100c3100]
mov edx, dword [0x100c3104]
push edx
push ecx
mov eax, dword [0x100c30f4]
push eax
mov ecx, dword [0x100c30f0]
push ecx
call fcn.1008eb70
xor esi, eax
mov word [0x100c3088], si
push 0
push 0x1bf2
mov edx, dword [0x100c30f4]
push edx
mov eax, dword [0x100c30f0]
push eax
call fcn.1008eb70
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x42c], ecx
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x42c]
or eax, dword [ebp - 0x428]
je 0x1001eb48
cmp dword [ebp - 0x42c], 1
jne 0x1001eb43
cmp dword [ebp - 0x428], 0
je 0x1001ebfb
jmp 0x1001ec6a
movsx ecx, byte [ebp - 0x13]
sub ecx, 0x9e
mov edx, dword [0x100c310c]
add edx, ecx
mov dword [0x100c310c], edx
movzx eax, byte [0x100c303b]
test eax, eax
jne 0x1001eb77
mov dword [ebp - 0x264], 1
jmp 0x1001eb81
mov dword [ebp - 0x264], 0
movsx ecx, word [ebp - 0x30]
add ecx, dword [ebp - 0x264]
add ecx, dword [ebp - 0x78]
jne 0x1001eba4
xor edx, edx
mov dword [ebp - 0x4d4], 1
mov dword [ebp - 0x4d0], edx
jmp 0x1001ebaf
xorps xmm0, xmm0
movlpd qword [ebp - 0x4d4], xmm0
mov eax, dword [ebp - 0x4d4]
mov ecx, dword [ebp - 0x4d0]
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], ecx
movzx edx, byte [0x100c3062]
mov eax, dword [ebp - 0x38]
sub eax, edx
mov word [ebp - 0x24], ax
push 0xa2346
push 0xbb2e88ed
mov ecx, dword [0x100c30dc]
push ecx
mov edx, dword [0x100c30d8]
push edx
call fcn.1008eb70
mov word [0x100c30b0], ax
jmp 0x1001ec6a
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x38], eax
movsx ecx, word [ebp - 0x24]
sub ecx, 0x50a4b1af
movsx edx, word [0x100c3090]
sub edx, ecx
mov word [0x100c3090], dx
mov eax, dword [ebp - 0x64]
and eax, 0x7768e4c6
mov word [ebp - 0x28], ax
mov ecx, dword [ebp - 0x38]
add ecx, 0xc7d19ff1
mov word [0x100c30fc], cx
mov dl, byte [0x100c3b38]
mov byte [ebp - 0x12], dl
movzx eax, word [0x100c30b0]
cdq
push 0x4af10
push 0x9b8ccf5d
push edx
push eax
call fcn.1008eb70
mov ecx, eax
movzx eax, byte [0x100c303b]
cdq
add eax, ecx
mov byte [0x100c303b], al
jmp 0x1001ed30
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov cl, 4
call fcn.1008ebb0
mov word [0x100c308c], ax
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x694], edx
mov dword [ebp - 0x690], eax
mov ecx, dword [ebp - 0x694]
or ecx, dword [ebp - 0x690]
je 0x1001ecbe
mov edx, dword [0x100c30f0]
mov eax, dword [0x100c30f4]
mov dword [ebp - 0x4dc], edx
mov dword [ebp - 0x4d8], eax
jmp 0x1001ecd0
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push esi
push eax
push edx
push ecx
call fcn.1008eb70
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
movsx eax, word [ebp - 0x28]
cdq
mov ecx, eax
add ecx, dword [0x100c30b8]
movsx eax, word [ebp - 0x28]
cdq
sub eax, ecx
mov word [ebp - 0x28], ax
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
mov ecx, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov word [ebp - 0x28], ax
mov edx, dword [ebp - 0xc4]
add edx, 0x810
mov dword [ebp - 0x61c], edx
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, eax
sub ecx, 0xa0f7c056
movzx eax, word [ebp - 0x18]
cdq
add eax, ecx
mov word [ebp - 0x18], ax
mov eax, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov cl, 3
call fcn.1008ebb0
mov byte [ebp - 0x12], al
movsx edx, word [0x100c3090]
test edx, edx
je 0x1001ed93
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x430], ecx
jmp 0x1001eda7
movzx eax, byte [0x100c3063]
cdq
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x430], edx
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
imul ecx, dword [ebp - 0x64], 0x43fc
mov word [0x100c30e0], cx
mov edx, dword [ebp - 0xc4]
add edx, 0x88f
mov dword [ebp - 0xce0], edx
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], ecx
movzx edx, byte [0x100c3063]
test edx, edx
je 0x1001ee0d
movzx eax, word [ebp - 0x20]
cdq
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], edx
jmp 0x1001ee24
mov eax, dword [0x100c30b8]
mov ecx, dword [0x100c30bc]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x43c]
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x64]
xor edx, edx
add ecx, 0x17669358
adc edx, 0x9b4e5
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], edx
movzx eax, byte [0x100c303b]
movsx ecx, word [ebp - 0x30]
imul eax, ecx
mov byte [0x100c303b], al
movsx edx, word [0x100c3118]
add edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
sub eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0xc4]
add ecx, 0x5ee
mov dword [ebp - 0x618], ecx
movsx edx, byte [str.NDisablePerfBackoff]
imul eax, edx, 0x92fc1361
mov dword [0x100c310c], eax
mov ecx, dword [0x100c3080]
add ecx, 0xdc
mov dword [ebp - 0x58], ecx
movzx eax, word [0x100c30e0]
cdq
sub eax, dword [0x100c30b8]
mov word [0x100c30e0], ax
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
push 0
push 0xb8
push eax
push edx
call fcn.1008eb70
mov byte [0x100c3062], al
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x4c], eax
movzx eax, byte [0x100c3062]
sub eax, 0x8271
cdq
mov dword [0x100c3100], eax
mov dword [0x100c3104], edx
movzx edx, word [ebp - 0xf1a]
imul eax, edx, 0x28
push eax
mov ecx, dword [ebp - 0x268]
add ecx, 0xf8
push ecx
mov edx, 0x28
imul eax, edx, 0
lea ecx, [ebp + eax - 0x10b0]
push ecx
call fcn.1008f990
add esp, 0xc
push 0x40
push 0x103000
mov edx, dword [ebp - 0xed0]
push edx
push 0
push 0
push 0
call fcn.10001330
add esp, 8
call eax
mov dword [ebp - 0x88], eax
push 0x60
call fcn.1004f040
add esp, 4
movzx eax, ax
cdq
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0x69c], eax
mov dword [ebp - 0x698], ecx
cmp dword [ebp - 0x698], 0
ja 0x1001efa2
cmp dword [ebp - 0x69c], 0
jb 0x1001efae
mov dword [ebp - 0x26c], 1
jmp 0x1001efb8
mov dword [ebp - 0x26c], 0
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
mov dword [ebp - 0x6a4], edx
mov dword [ebp - 0x6a0], eax
cmp dword [ebp - 0x6a0], 0
ja 0x1001efe1
cmp dword [ebp - 0x6a4], 0x63
jb 0x1001efed
mov dword [ebp - 0x270], 1
jmp 0x1001eff7
mov dword [ebp - 0x270], 0
mov ecx, dword [ebp - 0x26c]
cmp ecx, dword [ebp - 0x270]
jle 0x1001f29a
mov eax, dword [ebp - 0x58]
cdq
mov dword [ebp - 0x6ac], eax
mov dword [ebp - 0x6a8], edx
mov edx, dword [ebp - 0x6ac]
cmp edx, dword [0x100c3080]
jne 0x1001f035
mov eax, dword [ebp - 0x6a8]
cmp eax, dword [0x100c3084]
je 0x1001f041
mov dword [ebp - 0x274], 1
jmp 0x1001f04b
mov dword [ebp - 0x274], 0
cmp dword [ebp - 0x58], 0xf
je 0x1001f05d
mov dword [ebp - 0x278], 1
jmp 0x1001f067
mov dword [ebp - 0x278], 0
mov ecx, dword [ebp - 0x274]
cmp ecx, dword [ebp - 0x278]
je 0x1001f187
movzx eax, byte [0x100c3062]
cdq
push edx
push eax
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x6c]
push eax
call fcn.1008eb70
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x6b0], edx
mov ecx, dword [ebp - 0x6b4]
or ecx, dword [ebp - 0x6b0]
jne 0x1001f0be
xor edx, edx
mov dword [ebp - 0x4e4], 1
mov dword [ebp - 0x4e0], edx
jmp 0x1001f0c9
xorps xmm0, xmm0
movlpd qword [ebp - 0x4e4], xmm0
movsx eax, word [0x100c308c]
cdq
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
sub ecx, eax
sbb esi, edx
push esi
push ecx
mov edx, dword [ebp - 0x4e0]
push edx
mov eax, dword [ebp - 0x4e4]
push eax
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x11]
movzx edx, word [0x100c30a0]
add eax, edx
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x6bc], ecx
mov dword [ebp - 0x6b8], esi
mov eax, dword [ebp - 0x6bc]
or eax, dword [ebp - 0x6b8]
jne 0x1001f12f
mov byte [ebp - 0x8b], 1
jmp 0x1001f136
mov byte [ebp - 0x8b], 0
mov cl, byte [ebp - 0x8b]
mov byte [0x100c3027], cl
movsx edx, word [ebp - 0x1c]
movsx eax, byte [ebp - 0x13]
add edx, eax
mov word [ebp - 0x1c], dx
mov cl, byte [0x100c3b38]
mov byte [ebp - 0x11], cl
movsx edx, word [ebp - 0x24]
sub edx, 0x6cc5fc28
mov byte [0x100c3062], dl
mov eax, dword [0x100c30b8]
add eax, 0x55b1904d
mov word [ebp - 0x30], ax
mov ecx, 0xec4683d9
sub ecx, dword [ebp - 0x7c]
mov dword [ebp - 0x78], ecx
jmp 0x1001f295
movsx edx, word [0x100c308c]
movzx eax, word [0x100c30e0]
cmp edx, eax
jne 0x1001f1a5
mov dword [ebp - 0x27c], 1
jmp 0x1001f1af
mov dword [ebp - 0x27c], 0
movsx ecx, byte [ebp - 0x13]
cmp dword [ebp - 0x27c], ecx
jne 0x1001f295
imul edx, dword [ebp - 0x58], 0xc1
movzx eax, word [ebp - 0x18]
sub eax, edx
mov word [ebp - 0x18], ax
movsx ecx, byte [0x100c3027]
test ecx, ecx
je 0x1001f1f4
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
mov dword [ebp - 0x444], edx
mov dword [ebp - 0x440], eax
jmp 0x1001f20c
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
mov ecx, dword [ebp - 0x440]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
xor ecx, 0x467c
xor esi, 0
movsx eax, word [0x100c3088]
movsx edx, byte [ebp - 0x11]
imul eax, edx
cdq
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], esi
movsx eax, byte [ebp - 0x13]
test eax, eax
je 0x1001f264
mov cx, word [0x100c30fc]
mov word [ebp - 0x9e], cx
jmp 0x1001f26f
mov dx, word [ebp - 0x30]
mov word [ebp - 0x9e], dx
movsx eax, word [ebp - 0x9e]
cdq
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
movsx eax, byte [0x100c3027]
add eax, 0xdc78
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
jmp 0x1001f358
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [0x100c30d0]
mov esi, dword [0x100c30d4]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x7c], eax
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0x6c4], edx
mov dword [ebp - 0x6c0], eax
mov ecx, dword [ebp - 0x6c4]
or ecx, dword [ebp - 0x6c0]
jne 0x1001f2e7
mov dword [ebp - 0x280], 1
jmp 0x1001f2f1
mov dword [ebp - 0x280], 0
mov edx, dword [0x100c3108]
add edx, dword [ebp - 0x280]
mov byte [0x100c303b], dl
mov eax, dword [0x100c3100]
mov ecx, dword [0x100c3104]
add eax, 1
adc ecx, 0
mov dword [0x100c3100], eax
mov dword [0x100c3104], ecx
mov eax, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov cl, 7
call fcn.1008ebb0
mov word [0x100c308c], ax
mov eax, dword [0x100c30f8]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x40]
adc esi, edx
mov eax, dword [0x100c30f8]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [0x100c30f8], eax
cmp dword [ebp - 0x88], 0
je 0x10025b61
call dword [sym.imp.USER32.dll_GetDoubleClickTime]
mov word [0x100c30a0], ax
push 0
call fcn.1004f040
add esp, 4
mov byte [ebp - 0x11], al
cmp dword [ebp - 0x78], 0
jne 0x1001f398
xor eax, eax
mov dword [ebp - 0x4ec], 1
mov dword [ebp - 0x4e8], eax
jmp 0x1001f3a3
xorps xmm0, xmm0
movlpd qword [ebp - 0x4ec], xmm0
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x6cc], ecx
mov dword [ebp - 0x6c8], edx
mov eax, dword [ebp - 0x4e8]
cmp eax, dword [ebp - 0x6c8]
jl 0x1001f4c1
jg 0x1001f3db
mov ecx, dword [ebp - 0x4ec]
cmp ecx, dword [ebp - 0x6cc]
jbe 0x1001f4c1
mov dword [ebp - 0xc8], 0
jmp 0x1001f3f6
mov edx, dword [ebp - 0xc8]
add edx, 2
mov dword [ebp - 0xc8], edx
cmp dword [ebp - 0xc8], 0x3a3
jge 0x1001f4bc
mov al, byte [str.NDisablePerfBackoff]
add al, 1
mov byte [str.NDisablePerfBackoff], al
movzx ecx, word [ebp - 0x18]
imul edx, ecx, 0xbd57
mov byte [ebp - 0x12], dl
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
movzx edx, byte [0x100c303b]
test edx, edx
je 0x1001f44d
movzx eax, byte [0x100c303b]
cdq
mov dword [ebp - 0x4f4], eax
mov dword [ebp - 0x4f0], edx
jmp 0x1001f45f
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x4f4], eax
mov dword [ebp - 0x4f0], ecx
mov edx, dword [ebp - 0x4f4]
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x78]
cdq
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xcd8], edx
mov word [ebp - 0x28], cx
mov eax, dword [0x100c30a8]
mov ecx, dword [0x100c30ac]
add eax, 1
adc ecx, 0
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], ecx
jmp 0x1001f3e7
jmp 0x1001f5a3
movzx eax, word [ebp - 0x34]
cdq
mov ecx, eax
sub ecx, 0x6928597f
movzx eax, word [0x100c30a0]
cdq
add eax, ecx
mov word [0x100c30a0], ax
movsx edx, byte [ebp - 0x13]
test edx, edx
jne 0x1001f4f2
mov dword [ebp - 0x284], 1
jmp 0x1001f4fc
mov dword [ebp - 0x284], 0
movsx eax, word [0x100c3118]
test eax, eax
jne 0x1001f513
mov dword [ebp - 0x288], 1
jmp 0x1001f51d
mov dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x4c]
and eax, dword [ebp - 0x284]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [0x100c30fc]
cdq
mov edi, dword [ebp - 0x3c]
add eax, dword [ebp - 0x40]
adc edx, edi
sub ecx, eax
sbb esi, edx
not ecx
not esi
mov edx, dword [0x100c310c]
add edx, dword [ebp - 0x288]
xor eax, eax
mov edi, dword [0x100c30c8]
mov ebx, dword [0x100c30cc]
xor edi, edx
xor ebx, eax
not edi
not ebx
sub ecx, edi
sbb esi, ebx
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], esi
movzx ecx, word [ebp - 0x20]
shl ecx, 6
mov byte [0x100c3075], cl
mov edx, dword [ebp - 0x38]
sub edx, 0xe86400f
mov dword [0x100c310c], edx
mov eax, dword [ebp - 0x6c]
sub eax, 1
mov ecx, dword [ebp - 0x68]
sbb ecx, 0
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
mov ecx, 0x10
lea esi, [ebp - 0xd88]
mov edi, dword [ebp - 0x88]
rep movsd dword es:[edi], dword [esi]
movzx edx, byte [0x100c303b]
movsx eax, byte [ebp - 0x12]
cmp edx, eax
jne 0x1001f732
movsx ecx, word [0x100c3090]
cmp dword [ebp - 0x7c], ecx
jle 0x1001f653
mov edx, dword [ebp - 0x78]
shl edx, 4
mov word [ebp - 0x28], dx
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
not ecx
not esi
movzx eax, word [0x100c30b0]
cdq
add ecx, eax
adc esi, edx
mov edx, dword [0x100c30a8]
mov eax, dword [0x100c30ac]
push eax
push edx
push esi
push ecx
call fcn.1008eb70
mov dword [ebp - 0x58], eax
mov ecx, dword [0x100c30d8]
and ecx, 0xbad838c1
mov edx, dword [0x100c30dc]
and edx, 0
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], edx
mov byte [0x100c3062], 0xe
movsx eax, byte [str.NDisablePerfBackoff]
movzx ecx, word [ebp - 0x34]
imul eax, ecx
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
jmp 0x1001f72d
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x6d4], edx
mov dword [ebp - 0x6d0], eax
mov ecx, dword [ebp - 0x6d4]
or ecx, dword [ebp - 0x6d0]
je 0x1001f72d
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
push 0x9273f
push 0xc16e9e7f
push eax
push edx
call fcn.1008eb70
mov dword [ebp - 0x38], eax
mov esi, dword [0x100c30e8]
mov edi, dword [0x100c30ec]
not esi
not edi
mov eax, dword [ebp - 0x7c]
cdq
push edx
push eax
mov ecx, dword [0x100c3084]
push ecx
mov edx, dword [0x100c3080]
push edx
call fcn.1008eb70
not eax
not edx
sub esi, eax
sbb edi, edx
movsx eax, word [0x100c308c]
cdq
mov ecx, eax
mov ebx, edx
add ecx, dword [0x100c3080]
adc ebx, dword [0x100c3084]
mov eax, dword [ebp - 0x7c]
cdq
mov dword [ebp - 0x610], edi
mov edi, dword [ebp - 0x50]
add eax, dword [ebp - 0x54]
adc edx, edi
and ecx, eax
and ebx, edx
sub esi, ecx
mov edi, dword [ebp - 0x610]
sbb edi, ebx
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x50], edi
mov edx, dword [ebp - 0x74]
add edx, 0xe0
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x4c]
cdq
push edx
push eax
mov eax, dword [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x74]
push ecx
call fcn.1008eb70
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
jmp 0x1001f7df
movsx edx, byte [0x100c3075]
cmp edx, dword [ebp - 0x38]
jb 0x1001f74a
mov dword [ebp - 0x28c], 1
jmp 0x1001f754
mov dword [ebp - 0x28c], 0
movsx eax, word [ebp - 0x28]
cmp dword [ebp - 0x28c], eax
jg 0x1001f7df
movsx ecx, word [ebp - 0x30]
movsx edx, byte [str.NDisablePerfBackoff]
not edx
and ecx, edx
mov word [0x100c3118], cx
movzx eax, word [ebp - 0x18]
movsx ecx, word [ebp - 0x28]
and eax, ecx
mov word [ebp - 0x18], ax
mov edx, dword [ebp - 0x6c]
or edx, dword [ebp - 0x68]
je 0x1001f79b
movsx eax, word [0x100c30fc]
mov dword [ebp - 0x290], eax
jmp 0x1001f7a5
movsx ecx, byte [ebp - 0x12]
mov dword [ebp - 0x290], ecx
mov dl, byte [ebp - 0x290]
mov byte [0x100c303b], dl
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], ecx
movzx eax, word [ebp - 0x34]
cdq
push 0x43c00
push 0xe69ddc1a
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
mov edi, dword [ebp - 0x88]
add edi, dword [ebp - 0xd4c]
mov ecx, 0x3e
lea esi, [ebp - 0xf20]
rep movsd dword es:[edi], dword [esi]
mov dx, word [ebp - 0x2c]
mov word [ebp - 0x24], dx
mov dword [ebp - 0x78], 0x5da3
movsx eax, byte [ebp - 0x11]
test eax, eax
je 0x1001f826
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x140], edx
jmp 0x1001f83d
mov eax, dword [0x100c3080]
mov ecx, dword [0x100c3084]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x140]
mov dword [0x100c3120], edx
mov dword [0x100c3124], eax
mov dword [ebp - 0x78], 4
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov cl, 2
call fcn.1008ebb0
mov word [0x100c308c], ax
movzx ecx, word [ebp - 0xf1a]
imul edx, ecx, 0x28
push edx
mov eax, 0x28
imul ecx, eax, 0
lea edx, [ebp + ecx - 0x10b0]
push edx
mov eax, dword [ebp - 0xd4c]
mov ecx, dword [ebp - 0x88]
lea edx, [ecx + eax + 0xf8]
push edx
call fcn.1008f990
add esp, 0xc
mov eax, 4
imul ecx, eax, 0x38
mov edx, dword [0x100c3108]
add edx, dword [ecx + 0x10123e40]
mov dword [0x100c3108], edx
xor eax, eax
mov dword [ebp - 0x54], 4
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, 0x68
mov word [0x100c30b0], cx
movzx edx, byte [0x100c3063]
add edx, 0x13919cf5
xor eax, eax
mov dword [0x100c3080], edx
mov dword [0x100c3084], eax
movsx ecx, byte [0x100c3075]
test ecx, ecx
jne 0x1001f909
mov dword [ebp - 0x294], 1
jmp 0x1001f913
mov dword [ebp - 0x294], 0
movsx edx, word [ebp - 0x2c]
test edx, edx
jne 0x1001f927
mov dword [ebp - 0x298], 1
jmp 0x1001f931
mov dword [ebp - 0x298], 0
movsx eax, byte [ebp - 0x12]
test eax, eax
jne 0x1001f94d
xor ecx, ecx
mov dword [ebp - 0x6dc], 1
mov dword [ebp - 0x6d8], ecx
jmp 0x1001f958
xorps xmm0, xmm0
movlpd qword [ebp - 0x6dc], xmm0
movsx eax, byte [ebp - 0x13]
sub eax, dword [ebp - 0x294]
cdq
mov esi, eax
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100c3110]
mov edi, dword [0x100c3114]
push edx
push eax
push edi
push ecx
call fcn.1008eb70
sub esi, eax
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x7c]
cdq
mov edx, dword [0x100c30d0]
mov ecx, dword [0x100c30d4]
mov dword [ebp - 0xba0], ecx
or edx, dword [ebp - 0x6dc]
sub eax, edx
sub esi, eax
mov dword [ebp - 0x78], esi
cmp dword [ebp - 0xd4c], 0x40
jbe 0x10020f38
mov edx, 0x5e
mov word [0x100c3088], dx
mov eax, dword [0x100c30f8]
cdq
sub eax, 0xa3c1c975
mov word [0x100c30b0], ax
mov eax, dword [0x100c30a8]
mov ecx, dword [0x100c30ac]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
mov dl, byte [0x100c3108]
mov byte [ebp - 0x11], dl
movzx eax, word [0x100c30a0]
cdq
push 0xb8f1c
push 0x6afe2c81
push edx
push eax
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0x18]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov word [ebp - 0x18], ax
mov byte [0x100c3075], 4
movsx edx, word [ebp - 0x1c]
imul edx, dword [ebp - 0x38]
movsx eax, word [ebp - 0x1c]
sub eax, edx
mov word [ebp - 0x1c], ax
xor ecx, ecx
mov dword [ebp - 0x48], 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
push 0xb9d48
push 0x21fc84f3
push eax
push edx
call fcn.1008eb70
mov word [ebp - 0x24], ax
movsx ecx, word [0x100c3090]
imul edx, ecx, 0x87
mov byte [ebp - 0x11], dl
mov eax, dword [ebp - 0x58]
sub eax, 1
mov dword [ebp - 0x58], eax
movsx ecx, byte [0x100c3075]
mov dword [ebp - 0x29c], ecx
cmp dword [ebp - 0x29c], 4
ja case.default.0x1001fa96
mov edx, dword [ebp - 0x29c]
jmp dword [edx*4 + 0x10025c88]
mov eax, dword [ebp - 0x6c]
sub eax, 0x2444
mov ecx, dword [ebp - 0x68]
sbb ecx, 0
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [0x100c3108], 0xb1c0
movsx edx, byte [0x100c3027]
sar edx, 7
mov byte [str.NDisablePerfBackoff], dl
movsx eax, byte [0x100c3075]
test eax, eax
jne 0x1001faea
xor ecx, ecx
mov dword [ebp - 0x4fc], 1
mov dword [ebp - 0x4f8], ecx
jmp 0x1001faf5
xorps xmm0, xmm0
movlpd qword [ebp - 0x4fc], xmm0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
push eax
push edx
mov ecx, dword [ebp - 0x4f8]
push ecx
mov edx, dword [ebp - 0x4fc]
push edx
call fcn.1008eb70
mov ecx, eax
add ecx, dword [ebp - 0x38]
movzx eax, word [0x100c30a0]
cdq
mov esi, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov dword [ebp - 0xba4], edx
add esi, eax
movzx eax, word [0x100c30a0]
cdq
mov edx, dword [0x100c3098]
mov edi, dword [0x100c309c]
mov dword [ebp - 0xba8], edi
add edx, eax
sub esi, edx
add ecx, esi
mov byte [0x100c3027], cl
movsx eax, word [0x100c308c]
movsx ecx, word [0x100c308c]
sub eax, ecx
movsx edx, word [0x100c308c]
add edx, eax
mov word [0x100c308c], dx
jmp case.default.0x1001fa96
movsx eax, word [ebp - 0x2c]
test eax, eax
je 0x1001fb93
movsx ecx, byte [str.NDisablePerfBackoff]
mov dword [ebp - 0x2a0], ecx
jmp 0x1001fb9c
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x2a0], edx
mov al, byte [ebp - 0x2a0]
mov byte [ebp - 0x11], al
xor ecx, ecx
mov dword [0x100c30a8], 0x76baed42
mov dword [0x100c30ac], ecx
push 0x6d24d
push 0xfb072b39
mov edx, dword [0x100c30bc]
push edx
mov eax, dword [0x100c30b8]
push eax
call fcn.1008eb70
mov word [ebp - 0x1c], ax
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
jne 0x1001fbf3
xor edx, edx
mov dword [ebp - 0x504], 1
mov dword [ebp - 0x500], edx
jmp 0x1001fbfe
xorps xmm0, xmm0
movlpd qword [ebp - 0x504], xmm0
mov eax, dword [0x100c3120]
mov ecx, dword [0x100c3124]
push ecx
push eax
mov edx, dword [ebp - 0x500]
push edx
mov eax, dword [ebp - 0x504]
push eax
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movzx eax, byte [0x100c3062]
cdq
xor ecx, eax
xor esi, edx
mov dword [0x100c3080], ecx
mov dword [0x100c3084], esi
mov eax, dword [ebp - 0x78]
add eax, 0x213fe7af
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
jmp case.default.0x1001fa96
mov esi, dword [ebp - 0x60]
mov edi, dword [ebp - 0x5c]
not esi
not edi
mov edx, dword [0x100c30ec]
sub esi, dword [0x100c30e8]
sbb edi, edx
movsx eax, word [0x100c3090]
cdq
mov ecx, dword [ebp - 0x68]
push ecx
mov ecx, dword [ebp - 0x6c]
push ecx
push edx
push eax
call fcn.1008eb70
add esi, eax
adc edi, edx
mov dword [ebp - 0x6ec], esi
mov dword [ebp - 0x6e8], edi
mov edx, dword [ebp - 0x6ec]
or edx, dword [ebp - 0x6e8]
jne 0x1001fca9
mov eax, 1
mov word [ebp - 0x92], ax
jmp 0x1001fcb2
xor ecx, ecx
mov word [ebp - 0x92], cx
mov dx, word [ebp - 0x92]
mov word [0x100c3088], dx
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x100c3110]
mov edx, dword [0x100c3114]
push 0
push 0xa7b76009
push edx
push ecx
call fcn.1008eb70
mov word [ebp - 0x1c], ax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
push ecx
push eax
mov edx, dword [0x100c30dc]
push edx
mov eax, dword [0x100c30d8]
push eax
call fcn.1008eb70
push edx
push eax
mov ecx, dword [0x100c30dc]
push ecx
mov edx, dword [0x100c30d8]
push edx
call fcn.1008eb70
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
movzx eax, word [0x100c30b0]
cdq
mov ecx, 8
imul ecx, ecx, 0x34
mov dword [ecx + 0x1017a1f0], eax
mov dword [ecx + 0x1017a1f4], edx
jmp case.default.0x1001fa96
mov eax, dword [ebp - 0x78]
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
mov edx, 4
mov word [0x100c30e0], dx
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xbac], edx
add eax, ecx
mov word [ebp - 0x20], ax
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [0x100c30b8]
sub ecx, eax
mov eax, dword [0x100c30bc]
sbb eax, edx
add ecx, dword [0x100c30b8]
adc eax, dword [0x100c30bc]
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], eax
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
push 0xab368
push 0xb10b20e7
push edx
push ecx
call fcn.1008eb70
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
movsx eax, word [ebp - 0x30]
add eax, dword [0x100c30f8]
mov byte [0x100c3075], al
jmp case.default.0x1001fa96
movsx eax, byte [0x100c3075]
not eax
cdq
xor eax, dword [0x100c3110]
xor edx, dword [0x100c3114]
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov byte [0x100c303b], al
mov edx, 0xab69f
mov dword [ebp - 0x48], 0x3ecf2241
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x58], 0x89d9be55
movsx eax, byte [ebp - 0x12]
add eax, 0x55
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
mov ecx, dword [0x100c3b38]
mov dword [ebp - 0xcc], ecx
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
mov dword [ebp - 0x6f4], eax
mov dword [ebp - 0x6f0], edx
mov dword [ebp - 0x6fc], ecx
mov dword [ebp - 0x6f8], esi
mov edx, dword [ebp - 0x6f0]
cmp edx, dword [ebp - 0x6f8]
jb 0x1001fe8b
ja 0x1001fe7f
mov eax, dword [ebp - 0x6f4]
cmp eax, dword [ebp - 0x6fc]
jb 0x1001fe8b
mov dword [ebp - 0x2a4], 1
jmp 0x1001fe95
mov dword [ebp - 0x2a4], 0
cmp dword [ebp - 0x4c], 0x23
jl 0x1001fea7
mov dword [ebp - 0x2a8], 1
jmp 0x1001feb1
mov dword [ebp - 0x2a8], 0
mov ecx, dword [ebp - 0x2a4]
cmp ecx, dword [ebp - 0x2a8]
jge 0x1001fefa
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
mov dword [ebp - 0x704], edx
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x704]
or ecx, dword [ebp - 0x700]
je 0x1001fef5
jmp 0x1001fef5
jmp 0x1001ffab
mov edx, dword [ebp - 0x64]
add edx, 0x3a178132
xor eax, eax
mov ecx, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
add ecx, edx
adc esi, eax
mov dword [0x100c30c0], ecx
mov dword [0x100c30c4], esi
mov edx, dword [0x100c30cc]
mov eax, dword [ebp - 0x6c]
sub eax, dword [0x100c30c8]
mov ecx, dword [ebp - 0x68]
sbb ecx, edx
add eax, dword [ebp - 0x6c]
adc ecx, dword [ebp - 0x68]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
movsx edx, word [ebp - 0x24]
movsx eax, word [ebp - 0x30]
add edx, eax
movsx ecx, word [ebp - 0x24]
or ecx, edx
mov word [ebp - 0x24], cx
movzx edx, word [ebp - 0x20]
imul eax, edx, 0x652
cdq
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
sub ecx, eax
sbb esi, edx
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], esi
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [0x100c30d0]
mov esi, dword [0x100c30d4]
add ecx, eax
adc esi, edx
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
xor edx, ecx
xor eax, esi
mov dword [0x100c30d0], edx
mov dword [0x100c30d4], eax
mov ecx, dword [ebp - 0xcc]
add ecx, 0x82c
mov dword [ebp - 0xbb0], ecx
mov edx, dword [0x100c30d8]
and edx, 0x39023230
mov eax, dword [0x100c30dc]
and eax, 0
mov dword [0x100c30a8], edx
mov dword [0x100c30ac], eax
movsx ecx, byte [ebp - 0x12]
movsx edx, word [ebp - 0x24]
imul ecx, edx
movsx eax, byte [ebp - 0x12]
imul eax, ecx
mov byte [ebp - 0x12], al
mov ecx, dword [0x100c30d0]
mov edx, dword [0x100c30d4]
push 0
push 0x24a3534a
push edx
push ecx
call fcn.1008eb70
add eax, dword [0x100c30f0]
adc edx, dword [0x100c30f4]
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
movsx eax, word [ebp - 0x2c]
imul eax, eax, 0x2b56569
cdq
mov ecx, dword [0x100c30d8]
sub ecx, eax
mov eax, dword [0x100c30dc]
sbb eax, edx
mov dword [0x100c30d8], ecx
mov dword [0x100c30dc], eax
movsx ecx, byte [0x100c3075]
movzx edx, word [ebp - 0x20]
add ecx, edx
mov byte [0x100c3075], cl
movsx eax, word [ebp - 0x2c]
cdq
sub eax, dword [0x100c30d8]
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0xcc]
add eax, 0x6dc
mov dword [ebp - 0x2e0], eax
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, dword [0x100c30e8]
mov esi, dword [0x100c30ec]
mov dword [ebp - 0x70c], eax
mov dword [ebp - 0x708], edx
mov dword [ebp - 0x714], ecx
mov dword [ebp - 0x710], esi
mov edx, dword [ebp - 0x708]
cmp edx, dword [ebp - 0x710]
ja 0x100200cc
jb 0x100200c0
mov eax, dword [ebp - 0x70c]
cmp eax, dword [ebp - 0x714]
jae 0x100200cc
mov dword [ebp - 0x2ac], 1
jmp 0x100200d6
mov dword [ebp - 0x2ac], 0
cmp dword [ebp - 0x4c], 0x20
jge 0x100200e8
mov dword [ebp - 0x2b0], 1
jmp 0x100200f2
mov dword [ebp - 0x2b0], 0
mov ecx, dword [ebp - 0x2ac]
cmp ecx, dword [ebp - 0x2b0]
je 0x100203f6
movsx edx, byte [str.NDisablePerfBackoff]
test edx, edx
je 0x1002034d
mov eax, dword [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100c30a0], ax
movzx ecx, word [0x100c30a0]
test ecx, ecx
je 0x1002013a
mov dword [ebp - 0x2b4], 1
jmp 0x10020144
mov dword [ebp - 0x2b4], 0
movzx edx, word [0x100c30a0]
cmp edx, 0x31
je 0x1002015c
mov dword [ebp - 0x2b8], 1
jmp 0x10020166
mov dword [ebp - 0x2b8], 0
mov eax, dword [ebp - 0x2b4]
cmp eax, dword [ebp - 0x2b8]
jne 0x100201e3
movsx ecx, word [0x100c3088]
sub ecx, 0x60
mov byte [0x100c3063], cl
mov dword [ebp - 0x78], 0xc88a1b6a
movsx eax, word [ebp - 0x2c]
cdq
push 0x82979
push 0xfc6ac8ce
push edx
push eax
call fcn.1008eb70
mov byte [0x100c3063], al
movsx eax, word [0x100c3118]
sub eax, 0xbc
cdq
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [0x100c30d0], edx
mov dword [0x100c30d4], eax
imul ecx, dword [ebp - 0x7c], 0xada3fced
mov byte [str.NDisablePerfBackoff], cl
jmp 0x10020348
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
mov dword [ebp - 0x71c], edx
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x71c]
or ecx, dword [ebp - 0x718]
je 0x10020211
cmp dword [0x100c3108], 0
jne 0x1002023a
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
mov dword [ebp - 0x724], edx
mov dword [ebp - 0x720], eax
mov ecx, dword [ebp - 0x724]
or ecx, dword [ebp - 0x720]
jne 0x10020348
push 0xf3d0
push 0xea6bc193
mov edx, dword [ebp - 0x70]
push edx
mov eax, dword [ebp - 0x74]
push eax
call fcn.1008eb70
mov word [0x100c30b0], ax
push 0
push 0x510715fc
mov ecx, dword [0x100c30bc]
push ecx
mov edx, dword [0x100c30b8]
push edx
call fcn.1008eb70
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
add ecx, eax
adc esi, edx
mov dword [0x100c30a8], ecx
mov dword [0x100c30ac], esi
movsx eax, word [ebp - 0x28]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x6c]
movsx eax, word [ebp - 0x28]
cdq
sub eax, ecx
mov word [ebp - 0x28], ax
movzx eax, byte [0x100c303b]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
not ecx
not esi
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x72c], eax
mov dword [ebp - 0x728], edx
mov edx, dword [ebp - 0x72c]
or edx, dword [ebp - 0x728]
jne 0x100202f1
xor eax, eax
mov dword [ebp - 0x50c], 1
mov dword [ebp - 0x508], eax
jmp 0x100202fc
xorps xmm0, xmm0
movlpd qword [ebp - 0x50c], xmm0
mov ecx, dword [ebp - 0x50c]
mov edx, dword [ebp - 0x508]
mov dword [0x100c3080], ecx
mov dword [0x100c3084], edx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
push 0
push 0xe78
push ecx
push eax
call fcn.1008eb70
mov dword [0x100c3100], eax
mov dword [0x100c3104], edx
mov eax, dword [0x100c30a8]
mov edx, dword [0x100c30ac]
mov cl, 3
call fcn.1008ec80
mov byte [ebp - 0x12], al
jmp 0x100203f4
movsx edx, byte [0x100c3075]
mov eax, 4
shl eax, 1
mov dword [eax + 0x100dfc18], edx
movzx eax, byte [0x100c3063]
cdq
mov ecx, dword [ebp - 0x74]
sub ecx, eax
mov eax, dword [ebp - 0x70]
sbb eax, edx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], eax
movzx ecx, word [ebp - 0x34]
test ecx, ecx
je 0x1002039a
mov edx, dword [0x100c30b8]
mov eax, dword [0x100c30bc]
mov dword [ebp - 0x514], edx
mov dword [ebp - 0x510], eax
jmp 0x100203ab
movsx eax, word [ebp - 0x24]
cdq
mov dword [ebp - 0x514], eax
mov dword [ebp - 0x510], edx
mov ecx, dword [ebp - 0x514]
mov dword [0x100c3108], ecx
movsx edx, byte [0x100c3075]
xor edx, 0x9e25908c
mov dword [ebp - 0x58], edx
movsx eax, word [ebp - 0x1c]
movsx ecx, word [0x100c3088]
sub eax, ecx
not eax
cdq
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
not ecx
not esi
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov word [ebp - 0x34], ax
jmp 0x1002044e
cmp dword [ebp - 0x7c], 0
je 0x1002044e
mov edx, 0x7055
mov word [ebp - 0x30], dx
movzx eax, byte [0x100c3063]
imul eax, eax, 0xb8
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
movsx eax, word [0x100c3088]
sar eax, 1
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xbb4], edx
sub ecx, 0xeb
mov eax, dword [ebp - 0x78]
cdq
and eax, ecx
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0xcc]
add eax, 0x809
mov dword [ebp - 0x2dc], eax
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x734], ecx
mov dword [ebp - 0x730], edx
mov eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x734]
jne 0x10020493
mov ecx, dword [ebp - 0x70]
cmp ecx, dword [ebp - 0x730]
jne 0x10020493
mov dword [ebp - 0x2c0], 1
jmp 0x1002049d
mov dword [ebp - 0x2c0], 0
mov edx, dword [0x100c30f0]
or edx, dword [0x100c30f4]
jne 0x100204b7
mov dword [ebp - 0x2bc], 1
jmp 0x100204c1
mov dword [ebp - 0x2bc], 0
movzx eax, word [ebp - 0x20]
cmp eax, dword [ebp - 0x2bc]
jg 0x100204d9
mov dword [ebp - 0x2c4], 1
jmp 0x100204e3
mov dword [ebp - 0x2c4], 0
mov ecx, dword [ebp - 0x2c0]
cmp ecx, dword [ebp - 0x2c4]
jle 0x100204fd
mov dword [ebp - 0x2cc], 1
jmp 0x10020507
mov dword [ebp - 0x2cc], 0
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
movsx eax, word [0x100c3088]
cdq
mov dword [ebp - 0x73c], ecx
mov dword [ebp - 0x738], esi
mov dword [ebp - 0x744], eax
mov dword [ebp - 0x740], edx
mov edx, dword [ebp - 0x738]
cmp edx, dword [ebp - 0x740]
jb 0x1002055d
ja 0x10020551
mov eax, dword [ebp - 0x73c]
cmp eax, dword [ebp - 0x744]
jbe 0x1002055d
mov dword [ebp - 0x2c8], 1
jmp 0x10020567
mov dword [ebp - 0x2c8], 0
mov ecx, dword [0x100c310c]
cmp dword [ebp - 0x2c8], ecx
jbe 0x10020581
mov dword [ebp - 0x2d0], 1
jmp 0x1002058b
mov dword [ebp - 0x2d0], 0
mov edx, dword [ebp - 0x2cc]
cmp edx, dword [ebp - 0x2d0]
jl 0x100207f7
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
movzx eax, ax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
je 0x10020746
push 0
push 0xbf
call fcn.10051570
add esp, 8
cwde
cdq
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov ecx, dword [0x100c30c8]
mov edx, dword [0x100c30cc]
mov dword [ebp - 0x74c], ecx
mov dword [ebp - 0x748], edx
cmp dword [ebp - 0x748], 0
ja 0x100205f9
cmp dword [ebp - 0x74c], 0
jb 0x10020605
mov dword [ebp - 0x2d4], 1
jmp 0x1002060f
mov dword [ebp - 0x2d4], 0
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [ebp - 0x754], eax
mov dword [ebp - 0x750], ecx
cmp dword [ebp - 0x750], 0
ja 0x10020638
cmp dword [ebp - 0x754], 0x56
jb 0x10020644
mov dword [ebp - 0x2d8], 1
jmp 0x1002064e
mov dword [ebp - 0x2d8], 0
mov edx, dword [ebp - 0x2d4]
cmp edx, dword [ebp - 0x2d8]
jg 0x100206b4
movsx eax, byte [ebp - 0x11]
test eax, eax
je 0x100206af
mov eax, dword [0x100c3100]
mov edx, dword [0x100c3104]
mov cl, 1
call fcn.1008ebb0
mov dword [0x100c30f8], eax
mov ecx, 0x4d27
mov word [ebp - 0x24], cx
mov dx, word [ebp - 0x34]
add dx, 1
mov word [ebp - 0x34], dx
mov ax, word [0x100c3088]
add ax, 1
mov word [0x100c3088], ax
movzx ecx, word [0x100c30e0]
mov edx, dword [ebp - 0x4c]
add edx, ecx
mov dword [ebp - 0x4c], edx
jmp 0x10020741
mov ax, word [ebp - 0x30]
sub ax, 1
mov word [ebp - 0x30], ax
movsx ecx, byte [0x100c3027]
mov dword [ebp - 0x78], ecx
movsx eax, byte [0x100c3075]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100c30cc]
add ecx, dword [0x100c30c8]
adc esi, edx
mov eax, dword [ebp - 0x74]
and eax, dword [0x100c30f0]
mov edx, dword [ebp - 0x70]
and edx, dword [0x100c30f4]
sub ecx, eax
sbb esi, edx
movsx eax, byte [ebp - 0x11]
not eax
cdq
sub eax, dword [0x100c30f0]
sbb edx, dword [0x100c30f4]
or eax, 0xda6ccb8b
or edx, 0x7be3
not eax
not edx
add ecx, eax
adc esi, edx
mov dword [0x100c3100], ecx
mov dword [0x100c3104], esi
mov ax, word [0x100c3b38]
mov word [0x100c30fc], ax
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
jmp 0x100207f2
mov eax, dword [0x100c30f8]
cdq
mov dword [ebp - 0x75c], eax
mov dword [ebp - 0x758], edx
mov edx, dword [ebp - 0x758]
cmp edx, dword [ebp - 0x68]
jl 0x100207f2
jg 0x10020774
mov eax, dword [ebp - 0x75c]
cmp eax, dword [ebp - 0x6c]
jbe 0x100207f2
push 0x7c0fc
push 0x23eb10ca
mov ecx, dword [0x100c30bc]
push ecx
mov edx, dword [0x100c30b8]
push edx
call fcn.1008eb70
mov word [0x100c3088], ax
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], ecx
mov edx, dword [0x100c30e8]
mov eax, dword [0x100c30ec]
sub edx, 0x3f63
sbb eax, 0
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], eax
mov ecx, 0x31fda
mov dword [0x100c30d8], 0xb3ff0692
mov dword [0x100c30dc], ecx
mov dl, byte [0x100c3b38]
mov byte [ebp - 0x13], dl
xor eax, eax
mov dword [0x100c3080], 1
mov dword [0x100c3084], eax
jmp 0x100208af
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x764], ecx
mov dword [ebp - 0x760], edx
mov eax, dword [ebp - 0x764]
or eax, dword [ebp - 0x760]
je 0x100208af
mov ecx, dword [0x100c3b38]
xor edx, edx
mov dword [0x100c3110], ecx
mov dword [0x100c3114], edx
mov eax, 1
shl eax, 7
mov cl, byte [ebp - 0x78]
mov byte [eax + 0x100f88f8], cl
movzx eax, byte [0x100c303b]
cdq
add eax, 0x426c4f76
adc edx, 0xaf710
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
mov edx, dword [0x100c3b38]
xor eax, eax
mov dword [0x100c30c8], edx
mov dword [0x100c30cc], eax
movsx ecx, word [0x100c308c]
test ecx, ecx
je 0x10020892
movsx eax, word [0x100c30fc]
cdq
mov dword [ebp - 0x51c], eax
mov dword [ebp - 0x518], edx
jmp 0x100208a4
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x51c], edx
mov dword [ebp - 0x518], eax
mov cx, word [ebp - 0x51c]
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0x2dc]
add edx, dword [ebp - 0x2e0]
mov eax, dword [ebp - 0x2dc]
xor eax, 0x143
sub edx, eax
cmp edx, dword [ebp - 0x2e0]
je 0x10020f38
mov eax, dword [ebp - 0x58]
cdq
mov ecx, dword [0x100c30e8]
mov esi, dword [0x100c30ec]
mov dword [ebp - 0x76c], eax
mov dword [ebp - 0x768], edx
mov dword [ebp - 0x774], ecx
mov dword [ebp - 0x770], esi
mov edx, dword [ebp - 0x76c]
cmp edx, dword [ebp - 0x774]
jne 0x1002091c
mov eax, dword [ebp - 0x768]
cmp eax, dword [ebp - 0x770]
je 0x10020e8e
mov dword [ebp - 4], 2
mov byte [ebp - 4], 3
mov dword [ebp - 0xd0], 0x12a8
movsx ecx, byte [0x100c3027]
test ecx, ecx
jne 0x10020950
xor edx, edx
mov dword [ebp - 0x524], 1
mov dword [ebp - 0x520], edx
jmp 0x1002095b
xorps xmm0, xmm0
movlpd qword [ebp - 0x524], xmm0
mov eax, dword [0x100c30d0]
mov ecx, dword [0x100c30d4]
not eax
not ecx
xor eax, dword [ebp - 0x524]
xor ecx, dword [ebp - 0x520]
mov dword [ebp - 0x77c], eax
mov dword [ebp - 0x778], ecx
mov edx, dword [ebp - 0x77c]
or edx, dword [ebp - 0x778]
jne 0x1002099c
mov dword [ebp - 0x2e8], 1
jmp 0x100209a6
mov dword [ebp - 0x2e8], 0
movsx eax, byte [ebp - 0x11]
movsx ecx, word [ebp - 0x28]
add eax, ecx
jne 0x100209be
mov dword [ebp - 0x2e4], 1
jmp 0x100209c8
mov dword [ebp - 0x2e4], 0
movsx edx, word [0x100c3088]
add edx, dword [ebp - 0x2e4]
jne 0x100209e3
mov dword [ebp - 0x2ec], 1
jmp 0x100209ed
mov dword [ebp - 0x2ec], 0
movsx eax, byte [0x100c3075]
movsx ecx, word [0x100c30fc]
imul eax, ecx
or eax, dword [ebp - 0x2e8]
add eax, dword [ebp - 0x2ec]
mov word [ebp - 0x30], ax
movsx edx, byte [ebp - 0x11]
imul eax, edx, 0x21008f3
cdq
mov ecx, dword [ebp - 0x6c]
sub ecx, eax
mov eax, dword [ebp - 0x68]
sbb eax, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], eax
movzx ecx, word [0x100c30e0]
movsx edx, word [0x100c3118]
add ecx, edx
movzx eax, word [0x100c30e0]
sub eax, ecx
mov word [0x100c30e0], ax
movsx eax, word [0x100c3090]
cdq
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xbb8], edx
sub ecx, eax
add ecx, 0x31b21256
mov dword [ebp - 0x58], ecx
movsx eax, word [ebp - 0x2c]
test eax, eax
jne 0x10020a83
xor ecx, ecx
mov dword [ebp - 0x52c], 1
mov dword [ebp - 0x528], ecx
jmp 0x10020a8e
xorps xmm0, xmm0
movlpd qword [ebp - 0x52c], xmm0
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
xor edx, dword [ebp - 0x52c]
xor eax, dword [ebp - 0x528]
not edx
not eax
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
add ecx, edx
adc esi, eax
not ecx
not esi
xor ecx, 0xf9338d86
xor esi, 0
not ecx
not esi
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], esi
cmp dword [ebp - 0xd0], 0x1161
jle 0x10020d1f
movsx edx, word [0x100c308c]
movsx eax, byte [0x100c3075]
cmp edx, eax
jle 0x10020afe
mov dword [ebp - 0x2f4], 1
jmp 0x10020b08
mov dword [ebp - 0x2f4], 0
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
mov dword [ebp - 0x784], eax
mov dword [ebp - 0x780], edx
mov dword [ebp - 0x78c], ecx
mov dword [ebp - 0x788], esi
mov edx, dword [ebp - 0x780]
cmp edx, dword [ebp - 0x788]
jb 0x10020b54
ja 0x10020b48
mov eax, dword [ebp - 0x784]
cmp eax, dword [ebp - 0x78c]
jb 0x10020b54
mov dword [ebp - 0x2f0], 1
jmp 0x10020b5e
mov dword [ebp - 0x2f0], 0
mov ecx, dword [ebp - 0x2f0]
not ecx
or ecx, dword [ebp - 0x2f4]
je 0x10020c2b
mov dword [ebp - 0x7c], 1
xor edx, edx
mov dword [0x100c30b8], 0xdae5
mov dword [0x100c30bc], edx
movsx eax, word [ebp - 0x1c]
add eax, dword [ebp - 0x4c]
movsx ecx, word [ebp - 0x2c]
add eax, ecx
jne 0x10020bae
xor edx, edx
mov dword [ebp - 0x794], 1
mov dword [ebp - 0x790], edx
jmp 0x10020bb9
xorps xmm0, xmm0
movlpd qword [ebp - 0x794], xmm0
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, eax
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
mov dword [ebp - 0xbbc], eax
sub ecx, edx
not ecx
mov eax, dword [ebp - 0x4c]
cdq
add ecx, eax
add ecx, dword [ebp - 0x794]
not ecx
mov word [ebp - 0x24], cx
mov eax, dword [0x100c3108]
cdq
mov ecx, eax
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0xbc0], eax
sub ecx, edx
mov eax, dword [0x100c3108]
cdq
sub eax, ecx
mov dword [0x100c3108], eax
mov ecx, dword [0x100c310c]
sub ecx, 0x84
xor edx, edx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], edx
jmp 0x10020d0b
cmp dword [0x100c30f8], 0
je 0x10020c42
movzx eax, word [ebp - 0x18]
not eax
test eax, eax
jne 0x10020d0b
mov cl, byte [0x100c3027]
mov byte [0x100c303b], cl
movzx eax, byte [0x100c3062]
cdq
sub eax, dword [0x100c30d8]
mov edx, 0xb75bada9
sub edx, eax
not edx
mov byte [0x100c3062], dl
movzx eax, word [0x100c30a0]
sub eax, 0x5e9b053b
cdq
mov dword [0x100c3080], eax
mov dword [0x100c3084], edx
mov eax, dword [0x100c3b38]
xor ecx, ecx
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], ecx
movzx edx, byte [0x100c303b]
test edx, edx
jne 0x10020cac
mov dword [ebp - 0x2f8], 1
jmp 0x10020cb6
mov dword [ebp - 0x2f8], 0
movzx eax, byte [0x100c3063]
add eax, dword [ebp - 0x2f8]
not eax
cdq
mov ecx, dword [0x100c3100]
mov edx, dword [0x100c3104]
mov dword [ebp - 0xbc4], edx
add ecx, dword [0x100c30f0]
add eax, ecx
mov ecx, dword [0x100c3120]
mov edx, dword [0x100c3124]
mov dword [ebp - 0xbc8], edx
mov edx, dword [0x100c30d8]
sub edx, ecx
mov ecx, dword [ebp - 0x74]
add ecx, 0x34d4f535
xor edx, ecx
xor eax, edx
mov word [ebp - 0x18], ax
mov edx, dword [ebp - 0xd0]
sub edx, 1
mov dword [ebp - 0xd0], edx
jmp 0x10020ad0
jmp 0x10020d5a
mov dword [ebp - 4], 2
jmp 0x10020d6a
jmp 0x10020e7e
mov dword [ebp - 4], 0xffffffff
jmp 0x10020e8e
push 0
push 0x4efbaba4
mov ecx, dword [ebp - 0x70]
push ecx
mov edx, dword [ebp - 0x74]
push edx
call fcn.1008eb70
mov word [ebp - 0x24], ax
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [ebp - 0x70]
push ecx
mov ecx, dword [ebp - 0x74]
push ecx
push edx
push eax
call fcn.1008eb70
mov word [ebp - 0x1c], ax
movsx edx, byte [ebp - 0x11]
sub edx, 0x34048152
mov word [ebp - 0x20], dx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0xbcc], ecx
xor eax, 0x64b8e6df
mov byte [0x100c3062], al
movsx eax, word [ebp - 0x30]
sub eax, 0x5acf
cdq
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov edx, dword [ebp - 0xd4c]
sub edx, 0x40
push edx
mov eax, 1
imul ecx, eax, 0
lea edx, [ebp + ecx - 0x14b0]
push edx
mov eax, dword [ebp - 0x88]
add eax, 0x40
push eax
call fcn.1008f990
add esp, 0xc
imul ecx, dword [ebp - 0x64], 0xde57
mov byte [0x100c3075], cl
movsx eax, word [ebp - 0x2c]
movzx edx, word [0x100c30e0]
sub eax, edx
movsx ecx, word [ebp - 0x1c]
movsx edx, word [0x100c3118]
add ecx, edx
add eax, ecx
cdq
mov ecx, eax
mov esi, dword [0x100c3100]
mov edx, dword [0x100c3104]
mov dword [ebp - 0xbd0], edx
not esi
movzx eax, byte [0x100c303b]
not eax
cdq
add esi, eax
movzx eax, word [ebp - 0x18]
xor eax, 0x6d095306
not eax
cdq
add esi, eax
add ecx, esi
mov byte [0x100c3062], cl
movsx eax, word [0x100c3118]
imul ecx, eax, 0xde7a0ec9
xor edx, edx
mov dword [0x100c30d0], ecx
mov dword [0x100c30d4], edx
mov eax, 2
imul ecx, eax, 0x2c2d
movsx eax, word [ecx + 0x1013f1e8]
cdq
add eax, dword [0x100c30b8]
adc edx, dword [0x100c30bc]
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
mov edx, dword [0x100c3100]
mov eax, dword [0x100c3104]
mov ecx, dword [ebp - 0x3c]
add edx, dword [ebp - 0x40]
adc eax, ecx
mov dword [0x100c3100], edx
mov dword [0x100c3104], eax
mov dword [ebp - 0x90], 0
jmp 0x10021018
mov edx, dword [ebp - 0x90]
add edx, 1
mov dword [ebp - 0x90], edx
movzx eax, word [ebp - 0xf1a]
cmp dword [ebp - 0x90], eax
jge 0x1002134f
movsx ecx, word [ebp - 0x2c]
cmp dword [ebp - 0x64], ecx
jae 0x10021040
mov dword [ebp - 0x300], 1
jmp 0x1002104a
mov dword [ebp - 0x300], 0
cmp dword [ebp - 0x64], 0x23
jae 0x1002105c
mov dword [ebp - 0x304], 1
jmp 0x10021066
mov dword [ebp - 0x304], 0
mov edx, dword [ebp - 0x300]
cmp edx, dword [ebp - 0x304]
jl 0x10021105
movsx eax, word [0x100c3088]
add eax, 0x10d0b6c7
xor ecx, ecx
mov dword [0x100c3100], eax
mov dword [0x100c3104], ecx
mov edx, dword [ebp - 0x38]
not edx
xor eax, eax
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov esi, eax
mov eax, dword [ebp - 0x78]
cdq
mov ecx, dword [0x100c3110]
mov edi, dword [0x100c3114]
push edx
push eax
push edi
push ecx
call fcn.1008eb70
add esi, eax
mov word [0x100c3118], si
xor edx, edx
mov dword [0x100c3110], 0xe729
mov dword [0x100c3114], edx
mov eax, dword [0x100c3b38]
mov dword [ebp - 0x64], eax
mov eax, dword [0x100c30f0]
mov edx, dword [0x100c30f4]
mov cl, 2
call fcn.1008ebb0
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
jmp 0x1002118d
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
jne 0x10021119
mov dword [ebp - 0x308], 1
jmp 0x10021123
mov dword [ebp - 0x308], 0
cmp dword [ebp - 0x308], 0xc611
jge 0x1002118d
mov edx, dword [ebp - 0x6c]
sub edx, dword [0x100c30d8]
mov eax, dword [ebp - 0x68]
sbb eax, dword [0x100c30dc]
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], eax
mov dword [0x100c3108], 8
movsx ecx, byte [0x100c3075]
imul edx, ecx, 0x5c
movsx eax, byte [str.NDisablePerfBackoff]
add eax, edx
mov byte [str.NDisablePerfBackoff], al
movsx ecx, byte [ebp - 0x13]
mov edx, dword [0x100c310c]
and edx, ecx
mov eax, dword [0x100c310c]
sub eax, edx
mov dword [0x100c310c], eax
mov ecx, 0x3f0d
mov word [0x100c308c], cx
mov dword [ebp - 0xd4], 0
jmp 0x100211a8
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0xd4], edx
cmp dword [ebp - 0xd4], 0x1c3
jge 0x1002125e
mov dword [ebp - 0xd8], 0xe3
jmp 0x100211d3
mov eax, dword [ebp - 0xd8]
sub eax, 1
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0
jle 0x1002123d
movsx eax, word [0x100c30fc]
cdq
mov ecx, dword [0x100c30d0]
mov esi, dword [0x100c30d4]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
mov dword [ebp - 0x58], 0x150ae389
mov edx, dword [0x100c3b38]
mov dword [ebp - 0x4c], edx
mov dword [0x100c30f8], 0x2ab4
mov eax, dword [ebp - 0x58]
cdq
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], esi
mov dl, byte [ebp - 0x11]
add dl, 1
mov byte [ebp - 0x11], dl
jmp 0x100211c4
mov eax, dword [0x100c30a8]
mov ecx, dword [0x100c30ac]
add eax, 1
adc ecx, 0
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], ecx
jmp 0x10021199
imul edx, dword [ebp - 0x90], 0x28
mov eax, dword [ebp + 8]
add eax, dword [ebp + edx - 0x109c]
mov dword [ebp - 0x614], eax
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x100c3104]
sub ecx, dword [0x100c3100]
sbb edx, eax
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], edx
movzx eax, word [ebp - 0x34]
cdq
mov ecx, dword [0x100c3100]
mov edx, dword [0x100c3104]
mov dword [ebp - 0xbd4], edx
xor eax, ecx
mov byte [0x100c3075], al
movzx eax, byte [0x100c3062]
cdq
mov esi, eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
push 0x9501e
push 0x510b866f
push ecx
push eax
call fcn.1008eb70
mov ecx, eax
mov edx, dword [ebp - 0x78]
not edx
imul eax, edx, 0xa81e
cdq
xor ecx, eax
not ecx
xor esi, ecx
mov dword [ebp - 0x7c], esi
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0xbd8], ecx
add eax, 0x7a
mov dword [ebp - 0x4c], eax
push 0
push 0xd81cc8c7
mov edx, dword [0x100c30dc]
push edx
mov eax, dword [0x100c30d8]
push eax
call fcn.1008eb70
mov dword [ebp - 0x38], eax
imul ecx, dword [ebp - 0x90], 0x28
mov edx, dword [ebp + ecx - 0x10a0]
push edx
mov eax, dword [ebp - 0x614]
push eax
imul ecx, dword [ebp - 0x90], 0x28
mov edx, dword [ebp - 0x88]
add edx, dword [ebp + ecx - 0x10a4]
push edx
call fcn.1008f990
add esp, 0xc
jmp 0x10021009
movzx eax, word [0x100c30e0]
cdq
sub eax, 0x5bb74772
sbb edx, 0x5e4fd
mov dword [0x100c30f0], eax
mov dword [0x100c30f4], edx
mov eax, dword [ebp - 0x58]
imul eax, dword [0x100c30f8]
mov dword [0x100c30f8], eax
movzx cx, byte [0x100c303b]
mov edx, 2
imul eax, edx, 0x53
mov word [eax + 0x100c3b40], cx
movzx ecx, word [0x100c30e0]
test ecx, ecx
je 0x100213b4
movsx eax, word [0x100c3090]
cdq
mov dword [ebp - 0x534], eax
mov dword [ebp - 0x530], edx
jmp 0x100213cb
mov edx, dword [0x100c30d8]
mov eax, dword [0x100c30dc]
mov dword [ebp - 0x534], edx
mov dword [ebp - 0x530], eax
mov cx, word [ebp - 0x534]
mov word [ebp - 0x24], cx
movsx edx, word [ebp - 0x30]
imul edx, dword [ebp - 0x7c]
movsx eax, word [ebp - 0x30]
and eax, edx
mov word [ebp - 0x30], ax
mov ecx, dword [ebp - 0x4c]
add ecx, 0x23
movsx edx, word [0x100c308c]
imul edx, ecx
mov word [0x100c308c], dx
mov eax, dword [ebp - 0x88]
push eax
call fcn.1002d180
add esp, 4
test eax, eax
jne 0x1002156b
movsx ecx, word [0x100c30fc]
movzx edx, word [ebp - 0x34]
imul ecx, edx
mov word [0x100c30fc], cx
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
push 0x41f16
push 0x918b5fb
push ecx
push eax
call fcn.1008eb70
mov byte [0x100c3027], al
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x7a4], edx
mov dword [ebp - 0x7a0], eax
mov ecx, dword [ebp - 0x7a4]
or ecx, dword [ebp - 0x7a0]
jne 0x10021480
xor edx, edx
mov dword [ebp - 0x53c], 1
mov dword [ebp - 0x538], edx
jmp 0x1002148b
xorps xmm0, xmm0
movlpd qword [ebp - 0x53c], xmm0
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
push ecx
push eax
mov edx, dword [ebp - 0x538]
push edx
mov eax, dword [ebp - 0x53c]
push eax
call fcn.1008eb70
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov ecx, 1
imul edx, ecx, 0x524
movsx eax, byte [edx + 0x100f5600]
cdq
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
mov dword [ebp - 0x78], 0x63cd
push 0x8000
push 0
mov eax, dword [ebp - 0x88]
push eax
push 0
push 0
call fcn.10001360
add esp, 8
call eax
movzx ecx, byte [0x100c3062]
and ecx, 0x23
mov edx, dword [ebp - 0x38]
sub edx, ecx
mov dword [ebp - 0x38], edx
mov eax, 0xffffce01
mov word [ebp - 0x1c], ax
push 0
push 0x5cbba09
mov ecx, dword [0x100c30f4]
push ecx
mov edx, dword [0x100c30f0]
push edx
call fcn.1008eb70
mov word [0x100c30b0], ax
movsx eax, byte [ebp - 0x12]
movsx ecx, word [ebp - 0x2c]
sub eax, ecx
movsx edx, byte [ebp - 0x12]
sub edx, eax
mov byte [ebp - 0x12], dl
mov eax, dword [0x100c30b8]
xor eax, 0x4b
mov ecx, dword [0x100c30bc]
xor ecx, 0
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x88], 0
jmp 0x10021584
movsx eax, word [0x100c3118]
add eax, 0x974efff
cdq
and eax, dword [ebp - 0x6c]
and edx, dword [ebp - 0x68]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
movzx eax, byte [0x100c3062]
cdq
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov byte [0x100c3062], al
movzx eax, word [0x100c30b0]
cdq
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xbdc], edx
add ecx, eax
movsx eax, word [ebp - 0x24]
cdq
mov edx, dword [0x100c3080]
sub edx, eax
add ecx, edx
mov word [0x100c3118], cx
movsx eax, byte [str.NDisablePerfBackoff]
movsx ecx, byte [0x100c3075]
add eax, ecx
movsx edx, byte [str.NDisablePerfBackoff]
sub edx, eax
mov byte [str.NDisablePerfBackoff], dl
movzx eax, word [ebp - 0x20]
movsx ecx, byte [0x100c3075]
sub eax, ecx
movzx edx, word [ebp - 0x20]
imul edx, eax
mov word [ebp - 0x20], dx
mov eax, dword [0x100c3b38]
mov dword [ebp - 0x78], eax
imul ecx, dword [ebp - 0x618], 0xc2
imul edx, dword [ebp - 0x61c], 0x25f
cmp ecx, edx
je 0x10025b61
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [ebp - 0x7ac], eax
mov dword [ebp - 0x7a8], ecx
cmp dword [ebp - 0x7ac], 0x97744ded
jne 0x10021653
cmp dword [ebp - 0x7a8], 0
je 0x1002165f
mov dword [ebp - 0x30c], 1
jmp 0x10021669
mov dword [ebp - 0x30c], 0
mov edx, dword [ebp - 0x30c]
not edx
test edx, edx
je 0x10021762
push 0x6c983
push 0xc3c0a76e
mov eax, dword [0x100c30f4]
push eax
mov ecx, dword [0x100c30f0]
push ecx
call fcn.1008eb70
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
add edx, 1
adc eax, 0
mov dword [0x100c3110], edx
mov dword [0x100c3114], eax
movsx ecx, word [ebp - 0x1c]
xor ecx, 0x3b6f
mov word [0x100c30b0], cx
movsx eax, word [ebp - 0x30]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100c30ac]
add ecx, dword [0x100c30a8]
adc esi, edx
movsx eax, byte [ebp - 0x13]
not eax
cdq
add eax, 0xfd017cd3
adc edx, 0x94f64
sub ecx, eax
sbb esi, edx
mov eax, dword [0x100c3098]
mov edx, dword [0x100c309c]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x7b4], eax
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x7b4]
or eax, dword [ebp - 0x7b0]
jne 0x10021737
xor ecx, ecx
mov dword [ebp - 0x574], 1
mov dword [ebp - 0x570], ecx
jmp 0x10021742
xorps xmm0, xmm0
movlpd qword [ebp - 0x574], xmm0
mov edx, dword [ebp - 0x574]
mov eax, dword [ebp - 0x570]
mov dword [0x100c30f0], edx
mov dword [0x100c30f4], eax
mov dword [ebp - 0x58], 0x91c2ea62
jmp 0x100217bb
mov ecx, dword [ebp - 0x58]
add ecx, dword [ebp - 0x64]
mov dword [ebp - 0x58], ecx
movzx edx, byte [0x100c3063]
imul edx, dword [ebp - 0x64]
movzx eax, byte [0x100c3063]
imul eax, edx
mov byte [0x100c3063], al
movsx ecx, byte [0x100c3075]
imul ecx, dword [ebp - 0x38]
movsx edx, byte [0x100c3075]
or edx, ecx
mov byte [0x100c3075], dl
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
push 0xdd903
push 0x8a73a053
push ecx
push eax
call fcn.1008eb70
mov byte [0x100c303b], al
movsx edx, word [ebp - 0x24]
movsx eax, word [ebp - 0x30]
cmp edx, eax
jle 0x10021a1c
mov dword [0x100c30f8], 1
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x100c3120]
mov esi, dword [0x100c3124]
push esi
push eax
push edx
push ecx
call fcn.1008eb70
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov edx, dword [ebp - 0x74]
or edx, dword [ebp - 0x70]
jne 0x10021818
mov dword [ebp - 0x310], 1
jmp 0x10021822
mov dword [ebp - 0x310], 0
cmp dword [0x100c30f8], 0
jne 0x10021837
mov dword [ebp - 0x314], 1
jmp 0x10021841
mov dword [ebp - 0x314], 0
movzx eax, word [ebp - 0x20]
not eax
sub eax, dword [ebp - 0x310]
movsx ecx, word [0x100c308c]
imul ecx, dword [ebp - 0x314]
sub eax, ecx
cdq
mov dword [0x100c30a8], eax
mov dword [0x100c30ac], edx
mov dl, byte [0x100c3b38]
mov byte [ebp - 0x13], dl
movsx eax, word [0x100c3118]
cdq
mov ecx, eax
add ecx, 0x43ca4b5f
movzx eax, byte [0x100c303b]
cdq
or eax, ecx
mov byte [0x100c303b], al
movsx edx, byte [ebp - 0x13]
add edx, 0xb0bb
mov byte [0x100c303b], dl
movsx eax, byte [ebp - 0x11]
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
mov eax, dword [0x100c30f8]
mov dword [ebp - 0x318], eax
cmp dword [ebp - 0x318], 0
je 0x100218d7
cmp dword [ebp - 0x318], 1
je 0x1002195f
jmp 0x10021a17
movzx ecx, word [ebp - 0x18]
test ecx, ecx
jne 0x100218f3
xor edx, edx
mov dword [ebp - 0x5dc], 1
mov dword [ebp - 0x5d8], edx
jmp 0x100218fe
xorps xmm0, xmm0
movlpd qword [ebp - 0x5dc], xmm0
mov eax, dword [ebp - 0x5dc]
xor eax, dword [0x100c30b8]
mov ecx, dword [ebp - 0x5d8]
xor ecx, dword [0x100c30bc]
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], ecx
movzx eax, word [0x100c30b0]
cdq
mov ecx, dword [0x100c30b8]
sub ecx, eax
mov eax, dword [0x100c30bc]
sbb eax, edx
mov dword [0x100c30b8], ecx
mov dword [0x100c30bc], eax
mov eax, dword [ebp - 0x58]
cdq
mov ecx, eax
movsx eax, word [ebp - 0x28]
cdq
and eax, 0x88449b44
add ecx, eax
not ecx
mov dword [ebp - 0x58], ecx
jmp 0x10021a17
mov edx, dword [0x100c3b38]
mov dword [ebp - 0x38], edx
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
mov dword [ebp - 0xbe0], edx
xor ecx, 0x6b441db6
movzx eax, word [ebp - 0x20]
cdq
sub eax, ecx
mov word [ebp - 0x20], ax
movsx eax, byte [0x100c3027]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], esi
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
and edx, 0x4e85
and eax, 0
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
add ecx, edx
adc esi, eax
mov dword [0x100c30c8], ecx
mov dword [0x100c30cc], esi
movsx eax, word [ebp - 0x24]
cdq
add eax, dword [0x100c3080]
adc edx, dword [0x100c3084]
mov ecx, dword [0x100c3080]
sub ecx, eax
mov eax, dword [0x100c3084]
sbb eax, edx
mov dword [0x100c3080], ecx
mov dword [0x100c3084], eax
push 0
push 0x5a7f
mov ecx, dword [0x100c30bc]
push ecx
mov edx, dword [0x100c30b8]
push edx
call fcn.1008eb70
mov word [ebp - 0x1c], ax
jmp 0x10021b5f
movzx eax, word [0x100c30e0]
test eax, eax
je 0x10021b5f
mov ecx, 0x2c412f08
test ecx, ecx
je 0x10021b5f
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
push 0
push 0x9e
push eax
push edx
call fcn.1008eb70
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
movsx ecx, word [0x100c308c]
test ecx, ecx
je 0x10021a7a
movsx eax, word [ebp - 0x24]
cdq
mov dword [ebp - 0x5d4], eax
mov dword [ebp - 0x5d0], edx
jmp 0x10021a91
mov edx, dword [0x100c3120]
mov eax, dword [0x100c3124]
mov dword [ebp - 0x5d4], edx
mov dword [ebp - 0x5d0], eax
mov cl, byte [ebp - 0x5d4]
mov byte [ebp - 0x11], cl
cmp dword [ebp - 0x38], 0
jne 0x10021ab4
xor edx, edx
mov dword [ebp - 0x7cc], 1
mov dword [ebp - 0x7c8], edx
jmp 0x10021abf
xorps xmm0, xmm0
movlpd qword [ebp - 0x7cc], xmm0
mov eax, dword [0x100c3110]
mov ecx, dword [0x100c3114]
mov edx, dword [0x100c30c4]
sub eax, dword [0x100c30c0]
sbb ecx, edx
mov dword [ebp - 0x7bc], eax
mov dword [ebp - 0x7b8], ecx
mov eax, dword [ebp - 0x7bc]
or eax, dword [ebp - 0x7b8]
jne 0x10021b06
xor ecx, ecx
mov dword [ebp - 0x7c4], 1
mov dword [ebp - 0x7c0], ecx
jmp 0x10021b11
xorps xmm0, xmm0
movlpd qword [ebp - 0x7c4], xmm0
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
mov dword [ebp - 0xbe4], eax
and edx, dword [ebp - 0x7c4]
mov ecx, dword [ebp - 0x7cc]
sub ecx, edx
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x58]
add edx, 0x6b2137a8
mov eax, dword [ebp - 0x4c]
add eax, edx
mov dword [ebp - 0x4c], eax
mov cx, word [0x100c3080]
mov word [ebp - 0x2c], cx
movsx edx, byte [ebp - 0x13]
movsx eax, byte [0x100c3027]
add edx, eax
mov byte [ebp - 0x13], dl
mov ecx, dword [0x100c3b38]
mov dword [ebp - 0xe0], ecx
movsx edx, byte [ebp - 0x11]
sub edx, 0xf256
or edx, dword [0x100c3108]
mov dword [0x100c3108], edx
imul eax, dword [0x100c30f8], 0x423b176b
mov word [ebp - 0x30], ax
movsx eax, word [ebp - 0x30]
cdq
add eax, dword [ebp - 0x74]
adc edx, dword [ebp - 0x70]
push 0
push 0xef3d1b46
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x7d4], eax
mov dword [ebp - 0x7d0], edx
mov ecx, dword [ebp - 0x7d4]
or ecx, dword [ebp - 0x7d0]
jne 0x10021bd6
xor edx, edx
mov dword [ebp - 0x7dc], 1
mov dword [ebp - 0x7d8], edx
jmp 0x10021be1
xorps xmm0, xmm0
movlpd qword [ebp - 0x7dc], xmm0
movsx eax, word [ebp - 0x28]
cdq
mov ecx, eax
movzx eax, word [0x100c30e0]
not eax
cdq
mov edx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0xbe8], esi
add edx, eax
add ecx, edx
sub ecx, dword [ebp - 0x7dc]
mov byte [ebp - 0x11], cl
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [0x100c30cc]
add eax, dword [0x100c30c8]
adc ecx, edx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
movzx eax, word [ebp - 0x20]
cdq
and eax, dword [0x100c30d8]
and edx, dword [0x100c30dc]
add eax, dword [0x100c30d8]
adc edx, dword [0x100c30dc]
mov dword [0x100c30d8], eax
mov dword [0x100c30dc], edx
mov eax, dword [0x100c3100]
mov ecx, dword [0x100c3104]
mov dword [ebp - 0xbec], ecx
sub eax, 0x56a8d432
mov byte [ebp - 0x12], al
mov edx, dword [ebp - 0xe0]
add edx, 0x573
mov dword [ebp - 0xbf0], edx
jmp 0x10021c84
mov eax, dword [ebp - 0xe0]
add eax, 0x547
mov dword [ebp - 0xbf4], eax
mov dword [ebp - 0xdc], 0x345
jmp 0x10021cb0
mov ecx, dword [ebp - 0xdc]
sub ecx, 1
mov dword [ebp - 0xdc], ecx
cmp dword [ebp - 0xdc], 0
jle 0x10021dc8
mov eax, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov cl, 3
call fcn.1008ebb0
mov word [ebp - 0x34], ax
movsx edx, byte [ebp - 0x12]
movzx eax, word [ebp - 0x20]
xor edx, eax
mov byte [ebp - 0x12], dl
mov ecx, dword [0x100c310c]
shl ecx, 4
mov word [ebp - 0x20], cx
movzx edx, word [ebp - 0x18]
test edx, edx
jne 0x10021d04
xor eax, eax
mov dword [ebp - 0x7ec], 1
mov dword [ebp - 0x7e8], eax
jmp 0x10021d0f
xorps xmm0, xmm0
movlpd qword [ebp - 0x7ec], xmm0
movsx eax, byte [ebp - 0x13]
not eax
cdq
mov ecx, dword [0x100c30c4]
add eax, dword [0x100c30c0]
adc edx, ecx
mov dword [ebp - 0x7e4], eax
mov dword [ebp - 0x7e0], edx
mov edx, dword [ebp - 0x7e4]
or edx, dword [ebp - 0x7e0]
jne 0x10021d52
xor eax, eax
mov dword [ebp - 0x7f4], 1
mov dword [ebp - 0x7f0], eax
jmp 0x10021d5d
xorps xmm0, xmm0
movlpd qword [ebp - 0x7f4], xmm0
mov ecx, dword [0x100c3110]
mov edx, dword [0x100c3114]
mov dword [ebp - 0xbf8], edx
add ecx, dword [ebp - 0x7ec]
sub ecx, dword [ebp - 0x7f4]
mov word [ebp - 0x18], cx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
add eax, dword [0x100c30b8]
adc ecx, dword [0x100c30bc]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
movsx eax, byte [ebp - 0x12]
cdq
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov edx, dword [0x100c30d0]
mov eax, dword [0x100c30d4]
add edx, 1
adc eax, 0
mov dword [0x100c30d0], edx
mov dword [0x100c30d4], eax
jmp 0x10021ca1
mov ecx, dword [ebp - 0xe0]
add ecx, 0x6e77
mov dword [ebp - 0x31c], ecx
jmp 0x10021df0
jmp 0x10021e15
jmp 0x10021e49
jmp 0x10021e5a
mov edx, dword [ebp - 0x7c]
add edx, 0x8c2a
mov word [ebp - 0x28], dx
mov dword [0x100c3108], 8
mov eax, dword [ebp - 0x74]
add eax, 0x8dff252b
mov byte [str.NDisablePerfBackoff], al
push 0
push 0xb442091a
mov ecx, dword [0x100c30f4]
push ecx
mov edx, dword [0x100c30f0]
push edx
call fcn.1008eb70
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
mov eax, 4
imul ecx, eax, 0x79
mov eax, dword [ecx + 0x10192958]
cdq
mov dword [0x100c3098], eax
mov dword [0x100c309c], edx
movsx eax, word [ebp - 0x28]
add eax, 0xee6b
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
mov edx, dword [ebp - 0x31c]
add edx, dword [ebp - 0x31c]
mov eax, 0xe1aa
sub eax, edx
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x5c]
sub ecx, dword [ebp - 0x60]
sbb edx, eax
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], edx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x7fc], ecx
mov dword [ebp - 0x7f8], edx
mov eax, dword [ebp - 0x7fc]
or eax, dword [ebp - 0x7f8]
jne 0x10021f26
mov dword [ebp - 0x320], 1
jmp 0x10021f30
mov dword [ebp - 0x320], 0
mov eax, dword [ebp - 0x4c]
imul eax, dword [ebp - 0x320]
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
movsx ecx, word [0x100c3090]
movsx edx, word [ebp - 0x1c]
xor ecx, edx
jne 0x10021f61
mov dword [ebp - 0x324], 1
jmp 0x10021f6b
mov dword [ebp - 0x324], 0
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x64], eax
movzx eax, byte [0x100c303b]
cdq
mov dword [0x100c30b8], eax
mov dword [0x100c30bc], edx
movsx ecx, word [0x100c3088]
shl ecx, 7
mov word [ebp - 0x34], cx
mov dx, word [0x100c3b38]
mov word [ebp - 0x2c], dx
mov eax, dword [ebp - 0x88]
push eax
call fcn.10003800
add esp, 4
test eax, eax
jne 0x100223b4
call dword [sym.imp.KERNEL32.dll_GetThreadUILanguage]
mov byte [ebp - 0x11], al
movsx ecx, byte [ebp - 0x11]
test ecx, ecx
jle 0x1002210f
mov dword [ebp - 4], 6
movsx edx, word [ebp - 0x30]
movzx eax, word [0x100c30a0]
and edx, eax
movsx ecx, word [ebp - 0x30]
sub ecx, edx
mov word [ebp - 0x30], cx
mov edx, 0xbdd61
mov dword [0x100c3098], 0x36dd121c
mov dword [0x100c309c], edx
mov eax, dword [0x100c30c8]
mov ecx, dword [0x100c30cc]
mov dword [ebp - 0xbfc], ecx
mov edx, dword [0x100c30e8]
mov ecx, dword [0x100c30ec]
mov dword [ebp - 0xc00], ecx
add eax, edx
mov edx, dword [0x100c3098]
mov ecx, dword [0x100c309c]
mov dword [ebp - 0xc04], ecx
add edx, eax
mov byte [0x100c3062], dl
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [0x100c3098]
mov esi, dword [0x100c309c]
add ecx, eax
adc esi, edx
mov edx, dword [0x100c3098]
mov eax, dword [0x100c309c]
add edx, ecx
adc eax, esi
mov dword [0x100c3098], edx
mov dword [0x100c309c], eax
mov eax, dword [0x100c30f8]
cdq
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov ecx, eax
mov eax, dword [0x100c30f8]
cdq
xor eax, ecx
mov dword [0x100c30f8], eax
jmp 0x100220fa
mov dword [ebp - 4], 0xffffffff
jmp 0x1002210a
jmp 0x1002220a
mov eax, dword [0x100c30c0]
mov ecx, dword [0x100c30c4]
sub eax, 0x26b9
sbb ecx, 0
add eax, dword [ebp - 0x74]
adc ecx, dword [ebp - 0x70]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], ecx
movsx eax, word [0x100c308c]
add eax, 0x9998dfc
cdq
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], esi
mov dx, word [ebp - 0x34]
sub dx, 1
mov word [ebp - 0x34], dx
mov byte [ebp - 0x12], 0x17
movzx eax, word [ebp - 0x18]
not eax
mov ecx, 0xec416901
sub ecx, eax
jne 0x1002217e
xor edx, edx
mov dword [ebp - 0x5cc], 1
mov dword [ebp - 0x5c8], edx
jmp 0x10022189
xorps xmm0, xmm0
movlpd qword [ebp - 0x5cc], xmm0
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [0x100c30d8]
adc esi, dword [0x100c30dc]
movzx eax, word [0x100c30b0]
or eax, 0x6d42db68
cdq
xor ecx, eax
xor esi, edx
mov edx, dword [ebp - 0x5cc]
sub edx, ecx
mov eax, dword [ebp - 0x5c8]
sbb eax, esi
mov dword [ebp - 0x804], edx
mov dword [ebp - 0x800], eax
mov ecx, dword [ebp - 0x804]
or ecx, dword [ebp - 0x800]
jne 0x100221ed
xor edx, edx
mov dword [ebp - 0x5c4], 1
mov dword [ebp - 0x5c0], edx
jmp 0x100221f8
xorps xmm0, xmm0
movlpd qword [ebp - 0x5c4], xmm0
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [ebp - 0x5c0]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], ecx
push 0x8000
push 0
mov edx, dword [ebp - 0x88]
push edx
push 0
push 0
call fcn.10001360
add esp, 8
call eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x80c], eax
mov dword [ebp - 0x808], ecx
mov edx, dword [0x100c30bc]
cmp edx, dword [ebp - 0x808]
ja 0x100222e0
jb 0x1002225d
mov eax, dword [0x100c30b8]
cmp eax, dword [ebp - 0x80c]
ja 0x100222e0
movzx eax, word [ebp - 0x18]
cdq
mov ecx, dword [0x100c30d0]
mov esi, dword [0x100c30d4]
mov dword [ebp - 0x814], eax
mov dword [ebp - 0x810], edx
mov dword [ebp - 0x81c], ecx
mov dword [ebp - 0x818], esi
mov edx, dword [ebp - 0x814]
cmp edx, dword [ebp - 0x81c]
jne 0x100222db
mov eax, dword [ebp - 0x810]
cmp eax, dword [ebp - 0x818]
jne 0x100222db
movsx ecx, word [ebp - 0x30]
cmp dword [ebp - 0x4c], ecx
jl 0x100222db
mov dword [ebp - 0x620], 1
mov edx, dword [ebp - 0x620]
push edx
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x624], eax
mov eax, dword [ebp - 0x624]
push eax
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
mov dword [ebp - 0xc08], eax
jmp 0x100223a5
movzx eax, word [0x100c30a0]
cdq
xor eax, dword [0x100c3098]
xor edx, dword [0x100c309c]
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
push 0
push 0xfee9
push edx
push ecx
call fcn.1008eb70
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], esi
mov edx, 4
imul eax, edx, 0xc01
movsx ecx, word [0x100c3118]
add ecx, dword [eax + 0x10155538]
mov word [0x100c3118], cx
movzx eax, word [ebp - 0x20]
xor eax, 0xbc
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100c3114]
add ecx, dword [0x100c3110]
adc esi, edx
movsx eax, byte [ebp - 0x12]
cdq
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov byte [ebp - 0x12], al
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [0x100c30e8]
mov esi, dword [0x100c30ec]
push esi
push edx
push ecx
push eax
call fcn.1008eb70
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x88], 0
jmp 0x10025b61
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx eax, ax
cdq
mov dword [0x100c3120], eax
mov dword [0x100c3124], edx
movsx edx, word [0x100c3118]
add edx, 0xb
mov byte [0x100c3062], dl
cmp dword [ebp - 0x58], 0
jne 0x100223f3
xor eax, eax
mov dword [ebp - 0x5bc], 1
mov dword [ebp - 0x5b8], eax
jmp 0x100223fe
xorps xmm0, xmm0
movlpd qword [ebp - 0x5bc], xmm0
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
add ecx, dword [ebp - 0x5bc]
adc edx, dword [ebp - 0x5b8]
mov dword [ebp - 0x824], ecx
mov dword [ebp - 0x820], edx
mov eax, dword [ebp - 0x824]
or eax, dword [ebp - 0x820]
jne 0x10022436
mov dword [ebp - 0x328], 1
jmp 0x10022440
mov dword [ebp - 0x328], 0
movzx ecx, word [0x100c30a0]
not ecx
movsx edx, word [0x100c3118]
not edx
add edx, dword [ebp - 0x328]
add edx, ecx
jne 0x10022470
xor eax, eax
mov dword [ebp - 0x5b4], 1
mov dword [ebp - 0x5b0], eax
jmp 0x1002247b
xorps xmm0, xmm0
movlpd qword [ebp - 0x5b4], xmm0
mov ecx, dword [ebp - 0x5b4]
mov edx, dword [ebp - 0x5b0]
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], edx
mov al, byte [0x100c3b38]
mov byte [0x100c3062], al
movsx ecx, byte [ebp - 0x11]
test ecx, ecx
jne 0x100224ab
mov dword [ebp - 0x32c], 1
jmp 0x100224b5
mov dword [ebp - 0x32c], 0
movsx edx, word [ebp - 0x30]
movzx eax, word [0x100c30b0]
add edx, eax
not edx
add edx, dword [ebp - 0x32c]
movzx ecx, word [ebp - 0x18]
add edx, ecx
mov byte [0x100c303b], dl
mov esi, dword [0x100c3100]
mov edi, dword [0x100c3104]
mov edx, dword [ebp - 0x3c]
sub esi, dword [ebp - 0x40]
sbb edi, edx
mov eax, dword [ebp - 0x38]
xor ecx, ecx
add eax, dword [0x100c30b8]
adc ecx, dword [0x100c30bc]
add esi, eax
adc edi, ecx
movsx eax, byte [ebp - 0x11]
movzx edx, word [ebp - 0x34]
add eax, edx
cdq
mov ebx, eax
mov eax, edx
movzx ecx, word [ebp - 0x34]
mov dword [ebp - 0x628], eax
mov eax, ecx
cdq
mov ecx, dword [0x100c30d0]
mov dword [ebp - 0x62c], edi
mov edi, dword [0x100c30d4]
push edi
push ecx
push edx
push eax
call fcn.1008eb70
sub ebx, eax
mov edi, dword [ebp - 0x628]
sbb edi, edx
add esi, ebx
mov ebx, dword [ebp - 0x62c]
adc ebx, edi
mov dword [ebp - 0x82c], esi
mov dword [ebp - 0x828], ebx
mov edx, dword [ebp - 0x82c]
or edx, dword [ebp - 0x828]
jne 0x10022578
xor eax, eax
mov dword [ebp - 0x5ac], 1
mov dword [ebp - 0x5a8], eax
jmp 0x10022583
xorps xmm0, xmm0
movlpd qword [ebp - 0x5ac], xmm0
mov ecx, dword [ebp - 0x5ac]
mov edx, dword [ebp - 0x5a8]
mov dword [0x100c30d8], ecx
mov dword [0x100c30dc], edx
movzx eax, word [0x100c30b0]
add eax, dword [ebp - 0x58]
movzx ecx, word [0x100c30b0]
add ecx, eax
mov word [0x100c30b0], cx
mov edx, dword [0x100c3b38]
mov dword [ebp - 0xe4], edx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0xe4]
add eax, 0x5e0
mov dword [ebp - 0x638], eax
mov ecx, 9
mov esi, str.AslPathCleanUstrfa
lea edi, [ebp - 0xdd8]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0xdd8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x100c3108], eax
mov edx, dword [ebp - 0x630]
add edx, dword [ebp - 0xe4]
mov dword [ebp - 0xc0c], edx
mov eax, dword [0x100c310c]
cmp dword [ebp - 0x78], eax
je 0x1002268a
mov ecx, dword [0x100c3b38]
xor edx, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], edx
mov dword [0x100c310c], 0x5cdfdd07
movsx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
add ecx, eax
adc esi, edx
mov dword [0x100c3100], ecx
mov dword [0x100c3104], esi
mov edx, 0xffffbbe9
mov word [ebp - 0x28], dx
xor eax, eax
mov dword [0x100c30b8], 0xa469
mov dword [0x100c30bc], eax
jmp 0x100227d6
mov ecx, dword [ebp - 0x7c]
not ecx
test ecx, ecx
je 0x100226e6
movzx edx, word [0x100c30e0]
imul eax, edx, 0xc8247945
movsx ecx, byte [ebp - 0x12]
imul ecx, eax
mov byte [ebp - 0x12], cl
mov edx, dword [0x100c3b38]
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x58]
mov word [ebp - 0x2c], ax
movzx eax, byte [0x100c3063]
cdq
sub eax, 0x9629b5a1
mov ecx, dword [0x100c310c]
add ecx, eax
mov dword [0x100c310c], ecx
mov dl, byte [0x100c3b38]
mov byte [0x100c303b], dl
jmp 0x100227d6
movzx eax, word [ebp - 0x18]
test eax, eax
jne 0x100226fa
mov dword [ebp - 0x330], 1
jmp 0x10022704
mov dword [ebp - 0x330], 0
movsx ecx, word [ebp - 0x30]
cmp dword [ebp - 0x330], ecx
jl 0x100227d6
mov edx, 2
imul eax, edx, 0x467b
movzx eax, word [eax + 0x100fd9e0]
cdq
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x44]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], esi
movsx eax, word [ebp - 0x2c]
cdq
mov ecx, dword [0x100c3100]
mov esi, dword [0x100c3104]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100c3100]
mov eax, dword [0x100c3104]
add edx, ecx
adc eax, esi
mov dword [0x100c3100], edx
mov dword [0x100c3104], eax
movsx eax, word [0x100c3090]
cdq
mov ecx, dword [0x100c30f0]
sub ecx, eax
mov eax, dword [0x100c30f4]
sbb eax, edx
mov dword [0x100c30f0], ecx
mov dword [0x100c30f4], eax
movsx eax, byte [ebp - 0x13]
movzx ecx, word [0x100c30e0]
add eax, ecx
imul eax, dword [ebp - 0x4c]
not eax
cdq
mov edx, dword [0x100c30e8]
mov ecx, dword [0x100c30ec]
mov dword [ebp - 0xc10], ecx
not edx
sub eax, edx
mov word [ebp - 0x1c], ax
mov dword [ebp - 0x64], 0x98eb326
mov edx, dword [ebp - 0x64]
xor eax, eax
push 0xab285
push 0xc4cb0def
push eax
push edx
call fcn.1008eb70
mov byte [ebp - 0x12], al
mov ecx, dword [ebp - 0xe4]
add ecx, 0x721
mov dword [ebp - 0x634], ecx
movsx edx, word [ebp - 0x24]
cmp dword [ebp - 0x64], edx
jbe 0x100227fd
mov dword [ebp - 0x334], 1
jmp 0x10022807
mov dword [ebp - 0x334], 0
cmp dword [ebp - 0x64], 0x12
jbe 0x10022819
mov dword [ebp - 0x338], 1
jmp 0x10022823
mov dword [ebp - 0x338], 0
mov eax, dword [ebp - 0x334]
cmp eax, dword [ebp - 0x338]
jg 0x10022915
movsx ecx, word [ebp - 0x2c]
movsx edx, byte [0x100c3075]
imul ecx, edx
mov word [ebp - 0x2c], cx
mov eax, 1
imul ecx, eax, 0xb
mov dl, byte [0x100c3118]
mov byte [ecx + 0x10118b3c], dl
movsx eax, byte [ebp - 0x11]
movzx ecx, word [ebp - 0x34]
sub eax, ecx
mov byte [ebp - 0x11], al
movsx eax, word [0x100c308c]
cdq
mov ecx, dword [0x100c30dc]
push ecx
mov ecx, dword [0x100c30d8]
push ecx
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x834], eax
mov dword [ebp - 0x830], edx
mov edx, dword [ebp - 0x834]
or edx, dword [ebp - 0x830]
jne 0x100228ab
mov dword [ebp - 0x33c], 1
jmp 0x100228b5
mov dword [ebp - 0x33c], 0
mov eax, dword [ebp - 0x33c]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x100c30c0]
mov edx, dword [0x100c30c4]
sub ecx, dword [0x100c3080]
sbb edx, dword [0x100c3084]
mov eax, dword [0x100c30c0]
mov esi, dword [0x100c30c4]
push edx
push ecx
push esi
push eax
call fcn.1008eb70
mov dword [0x100c30c0], eax
mov dword [0x100c30c4], edx
mov ecx, dword [0x100c3110]
mov edx, dword [0x100c3114]
sub ecx, 1
sbb edx, 0
mov dword [0x100c3110], ecx
mov dword [0x100c3114], edx
jmp 0x1002298f
mov eax, dword [0x100c3110]
mov ecx, dword [0x100c3114]
mov dword [ebp - 0xc14], ecx
sub eax, 0xa0d6bd9e
mov word [ebp - 0x1c], ax
mov edx, dword [0x100c3110]
mov eax, dword [0x100c3114]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
mov ecx, 2
imul edx, ecx, 0x1337
mov ax, word [edx + 0x1016f650]
mov word [ebp - 0x20], ax
movzx eax, word [ebp - 0x18]
cdq
push 0xcf0f4
push 0x99eb2d84
push edx
push eax
call fcn.1008eb70
mov word [0x100c30b0], ax
movzx eax, word [ebp - 0x34]
add eax, 0xe063
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], esi
mov edx, dword [ebp - 0x634]
cmp dword [ebp - 0x638], edx
je 0x10025b61
movsx eax, word [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
mov byte [0x100c3075], al
movsx ecx, byte [0x100c3075]
test ecx, ecx
je 0x10022bd2
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
mov dword [ebp - 0x83c], edx
mov dword [ebp - 0x838], eax
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x840], esi
mov edx, dword [ebp - 0x838]
cmp edx, dword [ebp - 0x840]
jb 0x10022a14
ja 0x10022a08
mov eax, dword [ebp - 0x83c]
cmp eax, dword [ebp - 0x844]
jbe 0x10022a14
mov dword [ebp - 0x340], 1
jmp 0x10022a1e
mov dword [ebp - 0x340], 0
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x84c], ecx
mov dword [ebp - 0x848], edx
cmp dword [ebp - 0x848], 0
ja 0x10022a42
cmp dword [ebp - 0x84c], 0x40
jbe 0x10022a4e
mov dword [ebp - 0x344], 1
jmp 0x10022a58
mov dword [ebp - 0x344], 0
mov eax, dword [ebp - 0x340]
cmp eax, dword [ebp - 0x344]
jge 0x10022ade
mov ecx, dword [0x100c30c0]
mov edx, dword [0x100c30c4]
mov dword [ebp - 0xc18], edx
add ecx, 0x37b4
mov byte [ebp - 0x12], cl
movzx eax, byte [0x100c303b]
sub eax, 0x8298
cdq
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
movzx eax, word [ebp - 0x18]
cdq
mov ecx, dword [0x100c309c]
sub eax, dword [0x100c3098]
sbb edx, ecx
not eax
not edx
sub eax, dword [ebp - 0x6c]
sbb edx, dword [ebp - 0x68]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
movsx edx, byte [ebp - 0x11]
add edx, 0x64fa346a
mov word [0x100c3088], dx
xor eax, eax
mov dword [ebp - 0x40], 0x450e8336
mov dword [ebp - 0x3c], eax
jmp 0x10022bd0
cmp dword [0x100c310c], 0
je 0x10022bd0
mov ecx, dword [0x100c30e8]
mov edx, dword [0x100c30ec]
mov eax, dword [0x100c3120]
mov esi, dword [0x100c3124]
push esi
push eax
push edx
push ecx
call fcn.1008eb70
mov ecx, dword [0x100c30ec]
mov esi, dword [ebp - 0x6c]
sub esi, dword [0x100c30e8]
mov edi, dword [ebp - 0x68]
sbb edi, ecx
sub eax, esi
sbb edx, edi
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
movsx edx, word [ebp - 0x2c]
test edx, edx
je 0x10022b47
movzx eax, word [ebp - 0x34]
cdq
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], edx
jmp 0x10022b59
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], ecx
mov edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x148]
mov dword [0x100c3098], edx
mov dword [0x100c309c], eax
mov ecx, dword [0x100c3108]
sar ecx, 1
mov word [ebp - 0x18], cx
movsx edx, word [0x100c308c]
movsx eax, byte [ebp - 0x12]
sub eax, dword [ebp - 0x4c]
add edx, eax
mov word [ebp - 0x28], dx
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, dword [0x100c30c8]
mov esi, dword [0x100c30cc]
add ecx, eax
adc esi, edx
mov edx, dword [0x100c30c8]
mov eax, dword [0x100c30cc]
push esi
push ecx
push eax
push edx
call fcn.1008eb70
mov dword [0x100c30c8], eax
mov dword [0x100c30cc], edx
mov ecx, 2
mov word [0x100c3118], cx
jmp 0x10022c39
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0xc1c], edx
not ecx
movsx eax, byte [0x100c3075]
cdq
sub ecx, eax
mov word [ebp - 0x28], cx
mov eax, dword [ebp - 0x7c]
cdq
push 0xd2a11
push 0xc03c4daa
push edx
push eax
call fcn.1008eb70
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov ax, word [ebp - 0x1c]
mov ecx, 1
imul edx, ecx, 0x2f
mov byte [edx + 0x100c3c18], al
mov eax, dword [0x100c3b38]
mov dword [ebp - 0x7c], eax
imul eax, dword [0x100c30f8], 0x64
cdq
mov dword [0x100c30e8], eax
mov dword [0x100c30ec], edx
movsx eax, word [0x100c308c]
cdq
mov ecx, dword [0x100c3120]
mov esi, dword [0x100c3124]
mov dword [ebp - 0x854], eax
mov dword [ebp - 0x850], edx
mov dword [ebp - 0x85c], ecx
mov dword [ebp - 0x858], esi
mov edx, dword [ebp - 0x850]
cmp edx, dword [ebp - 0x858]
ja 0x10022cbf
jb 0x10022c83
mov eax, dword [ebp - 0x854]
cmp eax, dword [ebp - 0x85c]
ja 0x10022cbf
movzx ecx, byte [0x100c3062]
movsx edx, word [0x100c3118]
cmp ecx, edx
jl 0x10022cba
mov ecx, 9
mov esi, str.InboxAlternateData
lea edi, [ebp - 0xe00]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xe00]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [ebp - 0x34], ax
jmp 0x10022d74
mov ecx, 0x234f2
mov dword [ebp - 0x40], 0x57465434
mov dword [ebp - 0x3c], ecx
movsx eax, word [ebp - 0x1c]
cdq
sub eax, 0x63227a62
sbb edx, 0x49327
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
movsx edx, byte [str.NDisablePerfBackoff]
add edx, 0x16a26f68
mov word [ebp - 0x20], dx
mov eax, dword [ebp - 0x64]
shl eax, 3
mov word [ebp - 0x2c], ax
movsx ecx, word [ebp - 0x28]
test ecx, ecx
jne 0x10022d18
mov dword [ebp - 0x34c], 1
jmp 0x10022d22
mov dword [ebp - 0x34c], 0
movzx edx, word [ebp - 0x18]
test edx, edx
jne 0x10022d36
mov dword [ebp - 0x348], 1
jmp 0x10022d40
mov dword [ebp - 0x348], 0
movzx eax, word [0x100c30e0]
imul eax, dword [ebp - 0x348]
mov ecx, dword [ebp - 0x4c]
sub ecx, eax
add ecx, dword [ebp - 0x34c]
mov eax, ecx
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
movzx edx, word [ebp - 0x20]
sub edx, 0x9234
mov byte [ebp - 0x12], dl
mov eax, dword [0x100c3b38]
mov dword [ebp - 0xec], eax
push 0x9b
push 0xf3
push 0
call fcn.1004fd80
add esp, 0xc
movzx eax, ax
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
cmp dword [ebp - 0x68], 0
jg 0x10022db7
jl 0x10022dab
cmp dword [ebp - 0x6c], 0
ja 0x10022db7
mov dword [ebp - 0x350], 1
jmp 0x10022dc1
mov dword [ebp - 0x350], 0
cmp dword [ebp - 0x68], 0
jg 0x10022ddb
jl 0x10022dcf
cmp dword [ebp - 0x6c], 5
ja 0x10022ddb
mov dword [ebp - 0x354], 1
jmp 0x10022de5
mov dword [ebp - 0x354], 0
mov ecx, dword [ebp - 0x350]
cmp ecx, dword [ebp - 0x354]
jl 0x10022e99
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100c309c]
sub eax, dword [0x100c3098]
sbb edx, ecx
mov dword [ebp - 0x864], eax
mov dword [ebp - 0x860], edx
mov edx, dword [ebp - 0x864]
or edx, dword [ebp - 0x860]
jne 0x10022e32
mov eax, 1
mov word [ebp - 0x94], ax
jmp 0x10022e3b
xor ecx, ecx
mov word [ebp - 0x94], cx
mov dx, word [ebp - 0x94]
mov word [0x100c30fc], dx
mov eax, dword [0x100c30f8]
cdq
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
xor edx, ecx
xor eax, esi
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
movsx ecx, byte [ebp - 0x11]
add ecx, 0x6e2b1a8b
movsx edx, byte [ebp - 0x11]
or edx, ecx
mov byte [ebp - 0x11], dl
mov eax, dword [0x100c3098]
mov ecx, dword [0x100c309c]
push 0
push 0x22a5
push ecx
push eax
call fcn.1008eb70
mov word [ebp - 0x30], ax
mov edx, dword [ebp - 0xec]
add edx, 0xf314
mov dword [ebp - 0xc20], edx
xor eax, eax
mov dword [ebp - 0x74], 3
mov dword [ebp - 0x70], eax
xor ecx, ecx
mov dword [ebp - 0x40], 0x36b0b60b
mov dword [ebp - 0x3c], ecx
movsx eax, word [ebp - 0x28]
sub eax, 0x395d7c15
cdq
mov dword [0x100c30d0], eax
mov dword [0x100c30d4], edx
movsx eax, word [0x100c3090]
cdq
add eax, 0x9272f647
mov word [ebp - 0x34], ax
movzx eax, byte [0x100c3063]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
push esi
push ecx
push edx
push eax
call fcn.1008eb70
mov ecx, eax
movzx eax, byte [0x100c3063]
cdq
and eax, ecx
mov byte [0x100c3063], al
movsx edx, byte [0x100c3027]
sub edx, 0x97
mov word [0x100c30b0], dx
mov eax, 1
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x138], edx
cmp dword [ebp - 0x138], 0
jl 0x1002321e
jg 0x10022f62
cmp dword [ebp - 0x13c], 0
jb 0x1002321e
cmp dword [ebp - 0x138], 0
jg 0x1002321e
jl 0x10022f7e
cmp dword [ebp - 0x13c], 3
ja 0x1002321e
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xd40], eax
mov ecx, dword [ebp - 0xd40]
jmp dword [ecx*4 + 0x10025c9c]
mov edx, dword [ebp - 0xec]
add edx, 0x8e8b
mov dword [ebp - 0xc38], edx
mov dword [ebp - 0xe8], 0
jmp 0x1002324b
cmp dword [ebp - 0xe8], 0x36f
jge 0x10023464
mov dword [ebp - 4], 8
movsx ecx, word [0x100c308c]
cmp ecx, dword [ebp - 0x58]
jne 0x10023298
mov ecx, 9
mov esi, str.Failedtoreadencodi
lea edi, [ebp - 0xe28]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea edx, [ebp - 0xe28]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [ebp - 0x34], ax
jmp 0x1002338f
movzx eax, byte [0x100c303b]
test eax, eax
je 0x1002330f
mov eax, dword [0x100c30c0]
mov edx, dword [0x100c30c4]
mov cl, 2
call fcn.1008ebb0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
add ecx, 0x99e23f0d
adc edx, 0
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x4c]
add eax, 0xdaf
mov word [0x100c30b0], ax
mov ecx, dword [0x100c3b38]
xor edx, edx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0xc3c], ecx
mov byte [ebp - 0x11], al
mov edx, 0xc8
mov word [0x100c30fc], dx
jmp 0x1002338f
movsx eax, byte [0x100c3075]
test eax, eax
je 0x1002338f
jmp 0x1002343d
mov eax, dword [ebp - 0xec]
add eax, 0x1011d
mov dword [ebp - 0x63c], eax
xor ecx, ecx
mov dword [0x100c30d8], 4
mov dword [0x100c30dc], ecx
cmp dword [ebp - 0x4c], 0
jne 0x10023499
mov dword [ebp - 0x360], 1
jmp 0x100234a3
mov dword [ebp - 0x360], 0
movsx edx, word [ebp - 0x2c]
mov eax, dword [ebp - 0x360]
sub eax, edx
mov byte [0x100c3027], al
mov cx, word [0x100c3088]
mov edx, 2
imul eax, edx, 0x1500
mov word [eax + 0x101241b8], cx
mov ecx, dword [0x100c30c0]
mov edx, dword [0x100c30c4]
mov dword [0x100c3110], ecx
mov dword [0x100c3114], edx
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xc48], edx
add ecx, 0x3e0fae25
movsx eax, word [ebp - 0x24]
cdq
sub eax, ecx
mov word [ebp - 0x24], ax
movsx eax, word [ebp - 0x28]
cdq
mov ecx, dword [0x100c3098]
mov edx, dword [0x100c309c]
mov dword [ebp - 0xc4c], edx
add eax, ecx
mov word [ebp - 0x28], ax
mov eax, dword [0x100c30d8]
mov ecx, dword [0x100c30dc]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], ecx
cmp dword [ebp - 0x130], 0
jl 0x1002380f
jg 0x10023555
movsx eax, word [0x100c3088]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov byte [ebp - 0x11], al
imul ecx, dword [ebp - 0x63c], 0x839c
xor ecx, 0x842e82e0
mov dword [ebp - 0x650], ecx
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
movsx eax, word [ebp - 0x24]
cdq
mov dword [ebp - 0x884], ecx
mov dword [ebp - 0x880], esi
mov dword [ebp - 0x88c], eax
mov dword [ebp - 0x888], edx
mov edx, dword [ebp - 0x880]
cmp edx, dword [ebp - 0x888]
jb 0x10023887
movsx eax, byte [ebp - 0x11]
cdq
mov ecx, dword [0x100c3110]
mov esi, dword [0x100c3114]
push edx
push eax
push esi
push ecx
call fcn.1008eb70
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x12]
cdq
mov edi, dword [0x100c30e8]
mov ebx, dword [0x100c30ec]
sub edi, eax
sbb ebx, edx
and ecx, edi
and esi, ebx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], esi
mov eax, dword [0x100c30f8]
cdq
mov ecx, dword [0x100c3120]
mov esi, dword [0x100c3124]
add ecx, eax
adc esi, edx
mov dword [0x100c3120], ecx
mov dword [0x100c3124], esi
movzx edx, byte [0x100c3062]
movsx eax, word [ebp - 0x1c]
not eax
sub edx, eax
mov word [0x100c3088], dx
mov eax, dword [ebp - 0x58]
cdq
mov ecx, dword [0x100c30a8]
mov esi, dword [0x100c30ac]
add ecx, eax
adc esi, edx
mov dword [0x100c30a8], ecx
mov dword [0x100c30ac], esi
mov edx, 1
imul eax, edx, 0x23
movsx eax, byte [eax + 0x100f88f8]
cdq
mov dword [0x100c3110], eax
mov dword [0x100c3114], edx
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4