Function at 0x1001630d
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x17c
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 4], 0xfffffff6
xor edx, edx
mov dword [ebp - 0x3c], edi
mov ebx, ecx
mov dword [ebp - 8], edx
xor esi, esi
mov dword [ebp - 0x2c], ebx
inc esi
jmp 0x10016342
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x4c], 0xb34e6d4f
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x10016334
mov dword [ebp - 4], 0x12
jmp 0x1001635d
mov dword [ebp - 0x14], 0xe1d925b0
dec dword [ebp - 0x14]
dec dword [ebp - 4]
cmp dword [ebp - 4], 0x10
jl 0x10016350
mov dword [ebp - 4], edx
cmp dword [ebp - 4], edx
jl 0x100163a5
mov dword [ebp - 0xc], esi
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], edx
jl 0x1001638e
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x4c]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 4]
neg ecx
mov dword [ebp + eax*4 - 0x4c], ecx
dec dword [ebp - 0xc]
jns 0x10016376
mov byte [ebp - 0x15], dl
cmp byte [ebp - 0x15], 0
je 0x100163a0
push edx
call dword [sym.imp.KERNEL32.dll_SetCommBreak]
xor edx, edx
dec dword [ebp - 4]
jns 0x1001636b
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x24], 0xb7d8
mov dword [ebp - 0x14], 0x4a276ac1
mov dword [ebp - 4], edx
jmp 0x100163d0
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x15c], 0x261f9c28
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x100163bf
push 4
mov dword [ebp - 4], edx
pop ecx
jmp 0x100163eb
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x16c], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x100163de
mov dword [ebp - 4], edx
jmp 0x10016406
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xd4], 0xccc8
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x100163f5
mov dword [ebp - 4], edx
jmp 0x10016422
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xe8], 0x4e10
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016411
dec dword [ebp - 0xd0]
inc dword [ebp - 0x14]
mov dword [ebp - 4], 0xa5273358
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x14], 0x58aae07e
push 5
pop eax
mov dword [ebp - 0x14], eax
mov eax, 0x954eb856
mov dword [ebp - 0x14], 0x97440271
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], 0xd3ed23c5
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0xa1d2
mov dword [ebp - 0x24], 0x98cbdb62
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0xc], 0xb4ab
mov dword [ebp - 8], edx
jmp 0x100164a9
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xf8], 0x634d71b3
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x10016498
mov eax, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp ecx, eax
setge dl
mov dword [ebp - 0x14], edx
xor edx, edx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp ecx, eax
mov eax, dword [ebp - 4]
setge dl
xor ecx, ecx
cmp eax, edx
setg cl
cmp ecx, dword [ebp - 4]
jl 0x100164e3
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 4], 0x11f3
mov ecx, 0x11f3
push 0xfffffffffffffffb
sub ecx, eax
pop eax
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xb91ee4cf
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp edx, eax
setl cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
dec dword [ebp - 0xc]
xor edx, edx
mov dword [ebp - 0x20], 0x76820624
mov dword [ebp - 4], edx
jmp 0x10016544
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x30], 0xb26bdde0
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016536
push 0xffffffffffffffff
mov dword [ebp - 4], edx
pop ecx
jmp 0x1001655b
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x48], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016551
mov dword [ebp - 4], edx
jmp 0x10016576
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x114], 0xc3167647
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x10016565
mov dword [ebp - 0x30], 0xa
cmp dword [ebp - 0x30], 0x13
jge 0x100166fe
push 0xfffffffffffffffb
pop edi
mov dword [ebp - 0xc], 0x56fd8c65
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], 0x3c25
mov dword [ebp - 8], edx
jmp 0x100165b0
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x28], ecx
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x100165a6
mov dword [ebp - 0x28], 0xf
cmp dword [ebp - 0x28], 4
jne 0x1001661d
push 5
pop esi
mov dword [ebp - 0x14], ecx
mov dword [ebp - 8], 0xd60a2215
mov byte [ebp - 0x15], dl
cmp byte [ebp - 0x15], 0
je 0x100165e4
push edx
push edx
push edx
push edx
push edx
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
push 0
setne dl
cmp esi, edx
pop edx
sbb eax, eax
inc eax
mov dword [ebp - 8], eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 4
push 0xffffffffffffffff
pop ecx
je 0x100165c5
xor esi, esi
inc esi
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
dec eax
neg eax
sbb eax, eax
sub edx, 4
inc eax
sub edx, eax
mov eax, dword [ebp - 0x28]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setg cl
inc ecx
imul eax, ecx, 6
test eax, eax
je 0x10016655
cmp dword [ebp - 0x30], 0
je 0x10016655
mov edx, esi
jmp 0x10016657
xor edx, edx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
cmp ecx, 0x6e82a74
setle al
add eax, 0xfc4a4f2a
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0xc]
jle 0x10016757
mov dword [ebp - 8], 0xffff
xor edx, edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x28]
add ecx, eax
mov eax, dword [ebp - 8]
cmp ecx, eax
setg dl
cmp edx, dword [ebp - 0x28]
je 0x100166a1
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x28]
neg esi
sbb esi, esi
xor edx, edx
inc esi
mov dword [ebp - 0x48], esi
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0xc]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp esi, ecx
setg al
xor edx, edx
mov dword [ebp - 0x114], eax
mov byte [ebp - 0x15], dl
cmp byte [ebp - 0x15], dl
je 0x100166e8
push edx
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
xor edx, edx
xor esi, esi
inc esi
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x13
push 0xffffffffffffffff
pop ecx
jl 0x10016590
mov edi, dword [ebp - 0x3c]
mov eax, 0x76ff55e0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0xd
jg 0x10016a5a
push 6
mov ecx, 0xbc657e3b
pop ebx
mov dword [ebp - 0x10], 2
mov dword [ebp - 0x10], 0x73ff82f
mov dword [ebp - 0x14], 0x20bd2ab
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x14], 0xec2184e5
mov dword [ebp - 4], edx
jmp 0x100167fe
mov dword [ebp - 8], 0x936bb358
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
jne 0x100167c3
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0x10], ecx
je 0x1001677f
cmp dword [ebp - 0x28], ecx
je 0x1001677f
mov ecx, esi
jmp 0x10016781
xor ecx, ecx
mov eax, dword [ebp - 0x114]
xor edx, edx
cmp eax, 0xf1c2
setg dl
mov dword [ebp - 0x114], edx
sub edx, ecx
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
setne cl
sub ecx, 0x464d06d0
je 0x100167b5
cmp dword [ebp - 0x30], 0
je 0x100167b5
mov ecx, esi
jmp 0x100167b7
xor ecx, ecx
mov eax, dword [ebp - 0x28]
sub ecx, eax
mov eax, dword [ebp - 8]
add eax, ecx
je 0x100167c5
mov eax, esi
cmp edi, eax
mov eax, dword [ebp - 8]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x48]
je 0x100167e4
xor edx, edx
cmp dword [ebp - 0x28], edx
je 0x100167e6
mov eax, esi
jmp 0x100167e8
xor edx, edx
mov eax, edx
mov dword [ebp - 0x48], eax
jmp 0x100166eb
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x60], 0x969161d5
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x100167f0
mov dword [ebp - 4], edx
jmp 0x10016815
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xa4], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016808
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xa4], 2
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x10], edx
jmp 0x10016a40
mov dword [ebp - 0x1c], 0xc176b0f7
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], 0x4bbc1846
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 8], edx
jmp 0x1001689f
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x5c], 0xfffffffc
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x10016891
inc dword [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 3
jg 0x10016a31
mov dword [ebp - 4], 7
mov dword [ebp - 8], 0x14b81230
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 3
jg 0x10016a1f
mov dword [ebp - 0x14], 0x24e228c5
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x5c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x5c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x5c]
test eax, eax
setle cl
sub ecx, 4
je 0x10016905
cmp dword [ebp - 4], edx
je 0x10016905
mov edx, esi
mov dword [ebp - 0xb8], 0x110bc03d
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x5c]
test eax, eax
mov eax, dword [ebp - 0x1c]
sete cl
add ecx, 0xeef43fc3
add ecx, edx
xor edx, edx
cmp ecx, eax
setg dl
imul edx, dword [ebp - 4]
neg edx
sbb edx, edx
xor eax, eax
neg edx
cmp edx, 0xfe9f4864
setne al
cmp ebx, eax
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 8]
sub edx, eax
mov eax, dword [ebp - 4]
cmp edx, eax
mov eax, dword [ebp - 0x58]
setge cl
add ecx, eax
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x5c], ecx
mov eax, dword [ebp - 8]
mov dword [ebp - 0xb8], eax
cmp eax, 0xdcb0c7b2
jae 0x10016985
cmp dword [ebp - 4], 0
je 0x10016985
mov eax, esi
jmp 0x10016987
xor eax, eax
cmp eax, dword [ebp - 4]
jle 0x1001699a
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x5c], 0
je 0x1001699a
mov ecx, esi
jmp 0x1001699c
xor ecx, ecx
xor eax, eax
cmp ecx, 0x5412
sete al
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x14], eax
je 0x100169bb
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x50]
xor edx, edx
mov eax, dword [ebp - 8]
cmp eax, ecx
mov eax, dword [ebp - 4]
setg dl
xor ecx, ecx
push 0
mov eax, dword [ebp + eax*4 - 0x5c]
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setg cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 4]
setne dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x5c]
sub eax, edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 4]
cmp eax, 0xb307
mov eax, dword [ebp - 4]
pop edx
setle cl
add ecx, dword [ebp + eax*4 - 0x5c]
mov dword [ebp - 8], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x100168d0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x100168b5
mov ecx, 0xbc657e3b
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x90], edx
jne 0x10016a4a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jle 0x1001685c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xd
jle 0x10016730
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0xfffffff1
je 0x10016ea8
push 5
pop edi
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 4], edx
jmp 0x10016a80
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x38], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016a76
mov dword [ebp - 4], edx
jmp 0x10016a98
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x44], 0x3690f1d8
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10016a8a
push 2
mov dword [ebp - 4], edx
pop ebx
cmp dword [ebp - 4], 3
jge 0x10016ab8
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x130], ebx
inc dword [ebp - 4]
jmp 0x10016aa3
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0x44]
neg eax
sub eax, 0x9bdba76a
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], edx
jne 0x10016ea2
mov dword [ebp - 0x24], edx
mov dword [ebp - 4], edx
mov dword [ebp - 0x24], 0x31ea062
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 0xfffffff1
je 0x10016b71
or esi, 0xffffffff
mov dword [ebp - 0xc], 8
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0xdfddae9
mov dword [ebp - 0x14], 0x94ff5452
cmp dword [ebp - 0xc], edx
jne 0x10016b6e
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
cmp ecx, eax
mov eax, dword [ebp - 4]
setne dl
xor ecx, ecx
dec edx
cmp edx, eax
setge cl
cmp ecx, dword [ebp - 4]
jle 0x10016b50
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xfffffff1
push 0
pop edx
jne 0x10016b0d
xor esi, esi
inc esi
mov dword [ebp - 4], 0xffffffe4
jmp 0x10016e86
mov dword [ebp - 0x24], 0xf23d37f4
mov dword [ebp - 0x14], 0xaffa898c
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
inc dword [ebp - 4]
cmp dword [ebp - 4], 0xffffffe9
jg 0x10016e6f
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x24], eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff1
jne 0x10016a6a
mov edi, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x24], 0x76270e7a
mov dword [ebp - 0x24], 0x1f7d9671
mov dword [ebp - 0x24], 0xdc0223de
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x9b95
mov dword [ebp - 0x20], edx
jmp 0x10016ee6
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x17c], 0x77c422d5
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10016ed5
mov dword [ebp - 0x20], edx
jmp 0x10016f02
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x104], 0xfff6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10016ef1
mov dword [ebp - 0xc], 0xac70c309
cmp dword [ebp - 0xc], edx
jne 0x10016f4c
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
sub eax, 0xffff
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x10]
cmp eax, 0xcabf
jge 0x10016f3e
mov eax, edx
cmp dword [ebp - 0x10], edx
je 0x10016f40
mov eax, esi
cmp dword [ebp - 0xc], eax
je 0x10016f4c
mov eax, edx
cmp dword [ebp - 0xc], edx
je 0x10016f4e
mov eax, esi
xor edx, edx
cmp eax, 0xffffffff
mov eax, dword [ebp - 0x10]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, 0x711a
setge cl
mov dword [ebp - 0x24], ecx
dec dword [ebp - 0x100]
or ecx, 0xffffffff
mov dword [ebp - 0x34], 0xce125d16
mov dword [ebp - 0x24], 9
mov dword [ebp - 8], 3
mov dword [ebp - 0x3c], 0xe713a473
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], 0x4f77722a
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x2c], 0xa2f
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0xc], 0
jmp 0x10016fda
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xcc], 0xd513c61c
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x10016fc9
mov eax, dword [ebp - 8]
cmp dword [ebp - 8], 0
je 0x10017024
mov eax, dword [ebp - 8]
dec dword [ebp - 0x98]
mov eax, dword [ebp - 0x98]
je 0x10017013
mov eax, dword [ebp - 0xcc]
cmp ecx, eax
mov eax, dword [ebp - 0xa0]
sbb ecx, ecx
inc ecx
sub ecx, eax
je 0x10017013
mov eax, esi
jmp 0x10017015
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 8]
jl 0x10017024
mov ecx, esi
jmp 0x10017026
xor ecx, ecx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x24]
imul eax, ecx
push 3
cmp eax, esi
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [ebp - 0x2c], eax
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0xc8], edx
mov eax, dword [ebp - 0x3c]
cmp eax, edx
setle cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x24], 0xfffffffe
mov dword [ebp - 0xc], edx
pop ecx
jmp 0x1001706e
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xf4], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x10017061
mov byte [ebp - 0x15], dl
cmp byte [ebp - 0x15], dl
je 0x10017096
push 0x1cad
push edx
push 0x1c77
push 0x1230
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
push 3
xor edx, edx
pop ecx
mov eax, dword [ebp - 0xec]
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], edx
jmp 0x100170bb
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x154], 0xfff6
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x100170aa
or eax, 0xffffffff
mov dword [ebp - 4], eax
mov dword [ebp - 0x20], 0x55fff839
mov dword [ebp - 8], 0x3d37f4a1
mov dword [ebp - 0x10], edx
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0xb0], esi
mov dword [ebp - 0xac], esi
mov dword [ebp - 0xa8], esi
cmp dword [ebp - 4], edx
jne 0x10017100
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
add eax, 0x6085e071
je 0x10017165
mov dword [ebp - 0xc], 9
mov ecx, edx
mov eax, dword [ebp - 4]
cmp dword [ebp - 0xc], edx
je 0x10017126
mov ecx, esi
mov eax, dword [ebp - 0xc]
sub ecx, eax
xor eax, eax
cmp ecx, 0xe58e
setl al
mov dword [ebp - 8], eax
cmp dword [ebp - 8], edx
jne 0x10017143
cmp dword [ebp - 4], edx
je 0x1001714f
cmp dword [ebp - 0xc], edx
je 0x1001714f
cmp dword [ebp - 8], edx
je 0x1001714f
mov edx, esi
mov ecx, dword [ebp - 0x20]
xor eax, eax
neg edx
cmp ecx, edx
setge al
xor edx, edx
mov dword [ebp - 0x10], eax
jmp 0x10017286
mov dword [ebp - 8], 0x39c1d55e
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], ecx
jg 0x10017286
mov eax, 0xfc39fa23
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0x20], edx
jmp 0x10017227
mov dword [ebp - 0x24], esi
mov dword [ebp - 8], ecx
cmp dword [ebp - 8], edx
jl 0x10017224
mov dword [ebp - 0x2c], 2
mov dword [ebp - 4], edx
jmp 0x10017213
mov dword [ebp - 0x14], esi
mov dword [ebp - 0xc], edx
jmp 0x100171d4
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x148], 0x4446
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x100171c3
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0xb4], edx
jne 0x10017218
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, esi
setg cl
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], edx
jne 0x100171fa
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
push 3
pop ecx
mov eax, dword [ebp + eax*4 - 0xb4]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x148], eax
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jle 0x100171bb
mov dword [ebp - 0x1c], 0x26b13122
dec dword [ebp - 8]
jns 0x100171af
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jle 0x100171a4
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], edx
jl 0x10017275
mov dword [ebp - 0x1c], edx
jmp 0x1001724e
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xb4], 0x1cf
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1001723d
mov dword [ebp - 8], edx
jmp 0x1001726a
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xe4], 0xd6df81f9
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x10017259
dec dword [ebp - 0x20]
jns 0x10017238
inc dword [ebp - 0x10]
mov eax, 0xfc39fa23
cmp dword [ebp - 0x10], ecx
jle 0x10017184
push edx
lea eax, [ebp - 0x34]
push eax
call fcn.10019892
pop ecx
pop ecx
mov dword [ebp - 0x34], 9
jmp 0x100172a7
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x24], eax
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 8
jl 0x1001729b
mov dword [ebp - 8], 0xfffffffd
mov dword [ebp - 0x10], 0x1cecb457
mov dword [ebp - 0xc], 0x87a9b65c
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x24], esi
mov dword [ebp - 0xc], 0
jmp 0x100172e3
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x7c], 0x7e434392
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x100172d5
mov eax, dword [ebp - 8]
xor edx, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x74]
cmp ecx, eax
mov eax, dword [ebp - 8]
setne dl
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0xc], ecx
mov ecx, 0x3e8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
neg eax
sbb eax, eax
neg eax
neg eax
mov dword [ebp - 0x24], eax
mov eax, edi
cdq
idiv ecx
mov ecx, ebx
mov esi, edx
mov edi, eax
call fcn.1001629b
add eax, esi
add eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret