Function at 0x10030473
Capabilities:
Check os version
Compare security identifiers
Create directory
Create process on windows
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get disk information
Get file attributes
Get graphical window text
Get system information on windows
Identify system language via api
Log keystrokes via polling

Disassembly:
mov eax, 0x10065800
call fcn.1006518c
mov eax, 0x1224
call fcn.10062cf0
push ebx
xor eax, eax
mov byte [ebp - 0x61], dl
push esi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
push edi
mov dword [ebp - 0x54], ecx
mov edi, 0x61f9
jge 0x100304b5
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1168], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100304a0
xor eax, eax
mov ebx, dword [sym.imp.USER32.dll_GetKeyboardType]
mov esi, 0x2019
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100304ce
push esi
call ebx
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100304dc
push esi
call ebx
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100304fa
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x112c], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100304e5
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030508
push esi
call ebx
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030516
push esi
call ebx
xor eax, eax
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x28], ecx
or ebx, 0xffffffff
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x1c], 0xa023703a
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x4c], 0x8ef8a6eb
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10030559
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x8c4], 0xa11600d5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10030540
xor eax, eax
mov edi, dword [sym.imp.ADVAPI32.dll_RegLoadKeyW]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xfffffff2
push 0xfffffffffffffff8
pop ecx
jge 0x10030631
jmp 0x10030573
xor eax, eax
mov dword [ebp - 0x20], 0x2d9e
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], eax
jmp 0x1003058f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc50], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10030582
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub ecx, 0x289fff12
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setge dl
xor ecx, ecx
mov dword [ebp - 0x8c4], edx
mov eax, dword [ebp - 0x20]
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
je 0x100305d0
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x8c4]
xor ecx, ecx
cmp eax, ebx
setl cl
mov dword [ebp - 0xc50], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc4c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1003061b
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030618
push eax
push eax
push eax
call edi
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1e
je 0x10030608
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff2
push 0xfffffffffffffff8
pop ecx
jl 0x10030571
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x34], 0x40c8e82b
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x10030668
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf0], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003064f
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003067e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x868], 0x9884cb8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003066d
mov ecx, dword [ebp - 0xf0]
xor edx, edx
mov eax, dword [ebp - 0xe8]
cmp eax, ecx
mov esi, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
setne dl
sub esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
inc esi
cmp eax, esi
setne cl
xor eax, eax
cmp ecx, dword [ebp - 0xf0]
jg 0x100306ca
cmp dword [ebp - 0xec], eax
je 0x100306ca
xor esi, esi
inc esi
mov eax, esi
jmp 0x100306cd
xor esi, esi
inc esi
mov ecx, dword [ebp - 0xf0]
xor edx, edx
imul ecx, eax
mov dword [ebp - 0x868], ecx
mov eax, dword [ebp - 0xf0]
cmp ecx, eax
mov eax, dword [ebp - 0xf0]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0xf0]
sete bl
xor ecx, ecx
cmp ebx, eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x868], eax
test eax, eax
je 0x100307c0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x868]
neg edx
push 0xfffffffffffffff6
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 0xf0]
setl cl
xor edx, edx
sub ecx, 0x1b0ce7ae
cmp ecx, 0x5835
setl dl
xor ecx, ecx
cmp edx, eax
pop eax
setle cl
cmp eax, ecx
mov dword [ebp - 0x860], ecx
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x28]
imul ecx, eax, 0x9773
mov eax, dword [ebp - 0xec]
cmp eax, ecx
setne dl
xor eax, eax
cmp edx, 0xb705
setg al
cmp eax, 0x8d7c584e
mov eax, dword [ebp - 0x28]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setne cl
xor edx, edx
cmp ecx, 2
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
add ecx, 0xa
sub ecx, dword [ebp - 0xf0]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
neg eax
je 0x100307c0
mov eax, esi
jmp 0x100307c2
xor eax, eax
cmp eax, dword [ebp - 0xec]
jne 0x100307d0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xf0]
xor edx, edx
mov eax, dword [ebp - 0xe8]
cmp eax, ecx
mov eax, dword [ebp - 0xf0]
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], 0xe0648261
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], eax
jmp 0x10030821
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x1003081e
call ebx
push eax
call dword [sym.imp.USER32.dll_ShowCaret]
xor eax, eax
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffffffe3
je 0x1003080a
mov dword [ebp - 0x30], eax
mov ecx, 0xffff
cmp dword [ebp - 0x30], 3
jg 0x100308b0
mov dword [ebp - 0x10], eax
jmp 0x10030847
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x238], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1003083a
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x30]
imul edx, eax
mov eax, dword [ebp - 0x30]
cmp edx, eax
mov eax, dword [ebp - 0x238]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setl dl
sub eax, dword [ebp - 0x30]
neg eax
sbb eax, eax
inc eax
sub eax, edx
neg eax
sbb eax, eax
inc eax
cmp dword [ebp - 0x30], eax
jg 0x1003089a
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1003089c
mov eax, esi
jmp 0x1003089c
xor eax, eax
mov dword [ebp - 0x34], eax
mov ecx, 0xffff
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
push 0
pop eax
jle 0x10030835
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100308d2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1180], 0x61f9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100308b9
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100308e8
push 0x2019
call dword [sym.imp.USER32.dll_GetKeyboardType]
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100308fe
push 0x2019
call dword [sym.imp.USER32.dll_GetKeyboardType]
xor eax, eax
mov dword [ebp - 0x40], eax
mov ecx, 0xe7aebb1b
mov dword [ebp - 0xa00], ecx
or edx, 0xffffffff
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 0x9f8], ecx
mov dword [ebp - 0x9f4], ecx
mov dword [ebp - 0x34], eax
push 9
pop ecx
mov dword [ebp - 0x9e0], ecx
mov dword [ebp - 0x9dc], ecx
mov dword [ebp - 0x9d8], ecx
mov dword [ebp - 0x9d4], ecx
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x1003095e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x234], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003094a
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x10030980
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc80], 0x637b3047
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10030967
xor eax, eax
cmp dword [ebp - 0x230], eax
je 0x100309f8
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x100309ad
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x774], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10030994
xor eax, eax
mov dword [ebp - 0x774], eax
cmp dword [ebp - 0x774], ecx
jge 0x100309dc
mov eax, dword [ebp - 0x774]
mov dword [ebp + eax*4 - 0x234], 0xfffffffe
inc dword [ebp - 0x774]
cmp dword [ebp - 0x774], ecx
jl 0x100309bb
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x100309f1
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x234], 0
jne 0x10030a0a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x100309e1
jmp 0x10030a0a
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030a07
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x230]
xor edx, edx
mov eax, dword [ebp - 0xc80]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xa00]
mov eax, dword [ebp - 0xc80]
mov eax, dword [ebp - 0x234]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
push 0xfffffffffffffff6
setg dl
xor eax, eax
cmp edx, 0x895c
setg al
or edx, 0xffffffff
mov dword [ebp - 0x9d8], eax
pop eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x1c], 0xa023703a
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x4c], 0x8ef8a6eb
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10030a96
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x92c], 0xa11600d5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10030a7d
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xfffffff2
jge 0x10030b73
jmp 0x10030aa7
xor eax, eax
mov dword [ebp - 0x20], 0x2d9e
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10030ad0
push 0xfffffffffffffff8
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc60], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10030abd
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub ecx, 0x289fff12
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setge dl
xor ecx, ecx
mov dword [ebp - 0x92c], edx
mov eax, dword [ebp - 0x20]
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
je 0x10030b0b
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x92c]
xor ecx, ecx
or edx, 0xffffffff
cmp eax, edx
setl cl
mov dword [ebp - 0xc60], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc5c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x1e
jne 0x10030b66
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030b5a
push eax
push eax
push eax
call edi
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1e
je 0x10030b4a
or edx, 0xffffffff
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff2
jl 0x10030aa5
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], 0x48bbca63
push 3
pop ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x4c], 0x4a90611b
mov dword [ebp - 0x34], 0x67ee39f3
mov dword [ebp - 0x10], 0x1a
jmp 0x10030bb9
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], 0x5e07
mov dword [ebp - 0x4c], esi
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x3c]
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff7
je 0x10030ba0
xor eax, eax
mov dword [ebp - 0x20], 0xa115252c
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10030be8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xed8], 0xfffffffd
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10030bd0
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030c04
push eax
push esi
push 0x22a2
push eax
call dword [sym.imp.USER32.dll_SetMenuItemInfoW]
push 3
xor eax, eax
pop ecx
mov dword [ebp - 0x20], eax
jmp 0x10030c1a
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xed8], 0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10030c09
mov dword [ebp - 0x1c], 0xb21a35ca
mov dword [ebp - 0x30], 0x2a26f3f1
mov dword [ebp - 0x14], 0x37c1
mov dword [ebp - 0x10], 4
mov dword [ebp - 0x2c], 2
mov dword [ebp - 0x3c], 0x174a
mov dword [ebp - 0x34], 0x2679f1a7
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10030c6d
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x10030c6b
mov ecx, esi
jmp 0x10030c6f
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor edx, edx
neg eax
cmp eax, 0xd5d7
setne dl
imul eax, ecx, 9
xor ecx, ecx
cmp eax, edx
setg cl
mov dword [ebp - 0x10], ecx
mov ecx, 0xffff
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x1c]
cmp ecx, eax
sbb eax, eax
inc eax
mov dword [ebp - 0x2c], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10030d47
mov dword [ebp - 0x20], 0xf585950c
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10030ce0
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x598], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10030cc8
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x33
jne 0x10030d18
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x38], ecx
inc dword [ebp - 0x20]
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030d0f
push eax
push 0x2020
call ebx
push eax
call dword [sym.imp.USER32.dll_GetScrollInfo]
push 0xfffffffffffffff6
xor eax, eax
pop ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x33
je 0x10030cec
mov dword [ebp - 0x20], 0x15
jmp 0x10030d3c
mov dword [ebp - 0x30], eax
jmp 0x10030d33
mov dword [ebp - 0x598], 0x1d976d99
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xb
jne 0x10030d26
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xb
jle 0x10030d21
jmp 0x10030dec
mov dword [ebp - 0x34], 0x7b1aa435
mov dword [ebp - 0x40], 8
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x10030da8
mov dword [ebp - 0x30], 0xfffffff7
cmp dword [ebp - 0x30], eax
jne 0x10030d71
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
push 0xfffffffffffffff8
pop ecx
sub eax, ecx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x1c]
sub ecx, eax
add ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x10030da6
mov edx, esi
jmp 0x10030daa
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
push 0xfffffffffffffffb
sete cl
xor edx, edx
imul eax, ecx, 0xffff
cmp eax, 0xf606
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp eax, ecx
pop ecx
sbb eax, eax
neg eax
cmp ecx, eax
mov eax, dword [ebp - 0x14]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setne cl
mov dword [ebp - 0x34], ecx
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10030e10
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1144], 0x61f9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10030df7
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x14], 0x1647c2c9
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x20], 0x82c4475e
mov dword [ebp - 0x30], 0x2487223b
mov dword [ebp - 0x10], eax
jmp 0x10030e49
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf64], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10030e38
mov ecx, dword [ebp - 0x1c]
xor eax, eax
sub ecx, 0x5184860a
cmp ecx, esi
setl al
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x10030e71
mov eax, esi
xor edx, edx
cmp eax, 0xb979cd32
mov eax, dword [ebp - 0x1c]
sete dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
imul ecx, eax
xor eax, eax
test ecx, ecx
mov dword [ebp - 0xf64], ecx
setne al
mov dword [ebp - 0x30], eax
imul ecx, dword [ebp - 0x30], 0xffff
mov eax, dword [ebp - 0x1c]
add eax, 0xffff38eb
add eax, ecx
je 0x10030f4a
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x10030f2d
mov dword [ebp - 0x28], 0xfffffff1
cmp dword [ebp - 0x28], 0x12
jge 0x10030f2a
push 0xfffffffffffffffb
pop ecx
mov dword [ebp - 0x38], 0x5ca2589d
mov dword [ebp - 0x4c], 0x511bd77d
mov dword [ebp - 0x14], 0x14
cmp dword [ebp - 0x14], ecx
jg 0x10030f21
push 0xfffffffffffffff8
pop edx
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030f05
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
push 0xfffffffffffffffb
pop ecx
push 0xfffffffffffffff8
xor eax, eax
pop edx
mov dword [ebp - 0x20], 0x19
jmp 0x10030f14
inc dword [ebp - 0x4c]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jge 0x10030f0e
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jle 0x10030eec
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x12
jl 0x10030ecf
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x11
je 0x10030ebf
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030f80
push eax
push 0x2339
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
jmp 0x10030f7e
mov dword [ebp - 0x1c], 8
cmp dword [ebp - 0x1c], 0xf
je 0x10030f7e
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030f75
push 0x1d49
push 0x2034
push eax
call dword [sym.imp.USER32.dll_RemoveMenu]
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jne 0x10030f59
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030f92
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
xor eax, eax
mov dword [ebp - 0x30], 0xe0648261
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], eax
jmp 0x10030fb8
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10030fb5
call ebx
push eax
call dword [sym.imp.USER32.dll_ShowCaret]
xor eax, eax
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffffffe3
je 0x10030fa1
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jg 0x10031045
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10030fe6
mov ecx, 0xffff
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x214], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10030fd4
mov eax, dword [ebp - 0x214]
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x214]
mov eax, dword [ebp - 0x30]
imul edx, eax
mov eax, dword [ebp - 0x30]
cmp edx, eax
mov eax, dword [ebp - 0x214]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setl dl
sub eax, dword [ebp - 0x30]
neg eax
sbb eax, eax
inc eax
sub eax, edx
neg eax
sbb eax, eax
inc eax
cmp dword [ebp - 0x30], eax
jg 0x10031034
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10031036
mov eax, esi
jmp 0x10031036
xor eax, eax
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
push 0
pop eax
jle 0x10030fc7
mov byte [ebp - 0x21], al
mov ecx, 0xffff
mov dword [ebp - 0x20], ecx
push 4
pop ecx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x10], 0x8cc19583
mov dword [ebp - 0x4c], 0xdfcc86f8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031084
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5f0], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003106c
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x100310a1
push 0xfffffffffffffff6
pop edx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf7c], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003108f
dec dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
cmp eax, 0xfffffffb
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x50]
push 0xfffffffffffffff6
sete dl
add edx, 0x27c7a6e4
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, 0x5034
setl cl
xor ebx, ebx
cmp ecx, edx
setl bl
sub ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ebx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
pop edx
setl cl
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0x4c]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, edx
sete al
sub eax, dword [ebp - 0x10]
jne 0x10031117
mov edx, eax
cmp dword [ebp - 0x20], eax
je 0x10031119
mov edx, esi
mov eax, dword [ebp - 0x50]
xor ecx, ecx
cmp eax, edx
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebp - 0x20]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0xf7c], ecx
cmp byte [ebp - 0x21], 0
je 0x1003122f
mov dword [ebp - 0x10], esi
xor eax, eax
mov dword [ebp - 0x20], 0x77509cb0
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x40], 0xc3d6c1df
mov dword [ebp - 0x4c], 0xda84
push 2
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x1003118d
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x370], 0xe856dfc9
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10031175
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ecx
jge 0x100311ad
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x604], 0x9f3b06d9
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10031195
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], esi
jge 0x100311cd
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x5f8], 0xbb5fb49a
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x100311b5
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10031217
mov edx, dword [ebp - 0x370]
mov eax, esi
imul edx, eax
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x36c]
jge 0x100311f8
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x40], eax
je 0x100311fa
mov edx, esi
mov eax, dword [ebp - 0x36c]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x10]
jne 0x1003121f
xor eax, eax
cmp dword [ebp - 0x36c], eax
je 0x10031221
mov eax, esi
push 0x2019
mov dword [ebp - 0x2c], eax
call dword [sym.imp.USER32.dll_GetKeyboardType]
or eax, 0xffffffff
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x34], 0x40c8e82b
push 3
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10031261
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x120], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10031249
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10031277
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x85c], 0x9884cb8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10031266
mov ecx, dword [ebp - 0x120]
xor edx, edx
mov eax, dword [ebp - 0x118]
cmp eax, ecx
mov esi, dword [ebp - 0x120]
mov eax, dword [ebp - 0x120]
setne dl
sub esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
inc esi
cmp eax, esi
setne cl
xor eax, eax
cmp ecx, dword [ebp - 0x120]
jg 0x100312c2
cmp dword [ebp - 0x11c], eax
je 0x100312c2
xor esi, esi
inc esi
mov eax, esi
jmp 0x100312c5
xor esi, esi
inc esi
mov ecx, dword [ebp - 0x120]
xor edx, edx
imul ecx, eax
mov dword [ebp - 0x85c], ecx
mov eax, dword [ebp - 0x120]
cmp ecx, eax
mov eax, dword [ebp - 0x120]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x120]
sete bl
xor ecx, ecx
cmp ebx, eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x85c], eax
test eax, eax
je 0x100313b8
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x85c]
neg edx
push 0xfffffffffffffff6
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 0x120]
setl cl
xor edx, edx
sub ecx, 0x1b0ce7ae
cmp ecx, 0x5835
setl dl
xor ecx, ecx
cmp edx, eax
pop eax
setle cl
cmp eax, ecx
mov dword [ebp - 0x854], ecx
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x28]
imul ecx, eax, 0x9773
mov eax, dword [ebp - 0x11c]
cmp eax, ecx
setne dl
xor eax, eax
cmp edx, 0xb705
setg al
cmp eax, 0x8d7c584e
mov eax, dword [ebp - 0x28]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setne cl
xor edx, edx
cmp ecx, 2
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
add ecx, 0xa
sub ecx, dword [ebp - 0x120]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
neg eax
je 0x100313b8
mov eax, esi
jmp 0x100313ba
xor eax, eax
cmp eax, dword [ebp - 0x11c]
jne 0x100313c8
mov eax, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x120]
xor edx, edx
mov eax, dword [ebp - 0x118]
cmp eax, ecx
mov eax, dword [ebp - 0x120]
setge dl
xor ecx, ecx
cmp edx, eax
push 3
setg cl
xor eax, eax
mov dword [ebp - 0x34], ecx
or edx, 0xffffffff
mov byte [ebp - 0x21], al
mov ecx, 0xffff
mov dword [ebp - 0x20], ecx
mov ecx, 0x25b0e446
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x10], eax
pop ebx
jmp 0x10031428
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1198], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10031417
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1003149a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10031459
push 0xfffffffffffffffb
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc54], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031445
xor eax, eax
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], eax
jl 0x10031497
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x4c], 0x45f5b1b6
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], eax
jl 0x10031492
mov dword [ebp - 0x2c], 0x7d8cf4c5
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], eax
jl 0x1003148d
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x4c]
dec dword [ebp - 0x2c]
jns 0x10031482
dec dword [ebp - 0x28]
jns 0x10031473
dec dword [ebp - 0x10]
jns 0x10031461
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x1003143a
cmp byte [ebp - 0x21], 0
je 0x10031504
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x10], 7
mov dword [ebp - 0x10], ecx
jmp 0x100314ee
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100314d4
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetBkColor]
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100314eb
push 0x1700
push eax
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe2
jne 0x100314b4
push 0x2019
call dword [sym.imp.USER32.dll_GetKeyboardType]
xor eax, eax
or edx, 0xffffffff
mov dword [ebp - 0x40], eax
mov ecx, 0xe7aebb1b
mov dword [ebp - 0xa20], ecx
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0xa18], ecx
mov dword [ebp - 0xa14], ecx
mov dword [ebp - 0x34], eax
push 9
pop ecx
mov dword [ebp - 0xb80], ecx
mov dword [ebp - 0xb7c], ecx
mov dword [ebp - 0xb78], ecx
mov dword [ebp - 0xb74], ecx
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10031561
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x208], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003154d
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031581
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc8c], 0x637b3047
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031569
xor eax, eax
cmp dword [ebp - 0x204], eax
je 0x100315f9
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x100315ae
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x714], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10031595
xor eax, eax
mov dword [ebp - 0x714], eax
cmp dword [ebp - 0x714], ecx
jge 0x100315dd
mov eax, dword [ebp - 0x714]
mov dword [ebp + eax*4 - 0x208], 0xfffffffe
inc dword [ebp - 0x714]
cmp dword [ebp - 0x714], ecx
jl 0x100315bc
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x100315f2
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x208], 0
jne 0x1003160b
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x100315e2
jmp 0x1003160b
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10031608
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x204]
xor edx, edx
mov eax, dword [ebp - 0xc8c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xa20]
mov eax, dword [ebp - 0xc8c]
mov eax, dword [ebp - 0x208]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x204]
cmp eax, ecx
push 0xfffffffffffffff6
setg dl
xor eax, eax
cmp edx, 0x895c
setg al
mov dword [ebp - 0xb78], eax
pop eax
mov dword [ebp - 0x28], eax
or eax, 0xffffffff
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x1c], 0xa023703a
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x4c], 0x8ef8a6eb
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10031697
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x89c], 0xa11600d5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003167e
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xfffffff2
jge 0x1003176b
jmp 0x100316a8
xor eax, eax
mov dword [ebp - 0x20], 0x2d9e
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100316cf
push 0xfffffffffffffff8
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc70], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100316bd
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub ecx, 0x289fff12
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setge dl
xor ecx, ecx
mov dword [ebp - 0x89c], edx
mov eax, dword [ebp - 0x20]
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
je 0x1003170a
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x89c]
xor ecx, ecx
or edx, 0xffffffff
cmp eax, edx
setl cl
mov dword [ebp - 0xc70], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc6c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10031758
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10031755
push eax
push eax
push eax
call edi
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1e
je 0x10031745
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff2
jl 0x100316a6
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x10], eax
mov eax, 0xffff
mov dword [ebp - 0x28], 0x4fd3df75
mov dword [ebp - 0x50], 0xfffffff7
mov dword [ebp - 0x40], 0x402e31d8
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x28], 0xffffffea
jmp 0x10031832
mov dword [ebp - 0x20], 0xc157
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], 0xfffffffd
mov dword [ebp - 0x3c], esi
dec dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x20]
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x40], eax
je 0x100317d3
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x20]
xor ecx, ecx
add esi, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp eax, 0xfffffffa
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, esi
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor esi, esi
mov dword [ebp - 0x10], ecx
xor eax, eax
inc esi
mov ecx, eax
cmp dword [ebp - 0x10], eax
je 0x10031806
mov ecx, esi
mov eax, dword [ebp - 0x3c]
sub ecx, eax
cmp ecx, 0xb085bb31
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xfffffffb
setne cl
xor eax, eax
dec ecx
cmp dword [ebp - 0x20], ecx
jl 0x1003182c
cmp dword [ebp - 0x10], eax
je 0x1003182c
mov eax, esi
mov dword [ebp - 0x50], eax
inc dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x28], 0xffffffec
jg 0x1003179d
mov dword [ebp - 0x28], 0x6d444182
mov dword [ebp - 0x4c], 0x465ee6d5
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1003186e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa40], 0x7fd5464b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10031855
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1003188e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3c0], 0xe29ac92d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031876
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
jg 0x10031956
or edi, 0xffffffff
mov dword [ebp - 0x14], 0xfffffff9
mov dword [ebp - 0x4c], 0x3650dfa0
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x100318c4
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_MapDialogRect]
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jg 0x10031944
mov dword [ebp - 0x40], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xa40]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xa40]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0xa3c]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa40], ecx
mov dword [ebp - 0x4c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
inc eax
cmp eax, 0x106ec6e5
setle cl
sub ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
add eax, ecx
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x3c0], eax
jne 0x10031942
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jle 0x100318cc
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
jle 0x1003189d
mov edi, dword [sym.imp.ADVAPI32.dll_RegLoadKeyW]
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x1003196d
push 0x17c9
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor eax, eax
mov dword [ebp - 0x40], eax
mov ecx, 0xe7aebb1b
mov dword [ebp - 0xb20], ecx
or edx, 0xffffffff
mov dword [ebp - 0xb1c], ecx
mov dword [ebp - 0xb18], ecx
mov dword [ebp - 0xb14], ecx
mov dword [ebp - 0x34], eax
push 9
pop ecx
mov dword [ebp - 0xa60], ecx
mov dword [ebp - 0xa5c], ecx
mov dword [ebp - 0xa58], ecx
mov dword [ebp - 0xa54], ecx
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x100319cd
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x228], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100319b9
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x100319ed
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xca4], 0x637b3047
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x100319d5
xor eax, eax
cmp dword [ebp - 0x224], eax
je 0x10031a65
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10031a1a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7b4], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10031a01
xor eax, eax
mov dword [ebp - 0x7b4], eax
cmp dword [ebp - 0x7b4], ecx
jge 0x10031a49
mov eax, dword [ebp - 0x7b4]
mov dword [ebp + eax*4 - 0x228], 0xfffffffe
inc dword [ebp - 0x7b4]
cmp dword [ebp - 0x7b4], ecx
jl 0x10031a28
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10031a5e
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x228], 0
jne 0x10031a77
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10031a4e
jmp 0x10031a77
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10031a74
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x224]
xor edx, edx
mov eax, dword [ebp - 0xca4]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xb20]
mov eax, dword [ebp - 0xca4]
mov eax, dword [ebp - 0x228]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x224]
cmp eax, ecx
setg dl
xor eax, eax
cmp edx, 0x895c
setg al
mov dword [ebp - 0xa58], eax
xor eax, eax
mov dword [ebp - 0x40], 0x138b36ce
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031aed
push 0xfffffffffffffffb
pop ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x254], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031ad9
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10031b0f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3bc], 0x62513244
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10031af6
xor eax, eax
push 6
pop ecx
cmp dword [ebp - 0x254], eax
je 0x10031c34
mov dword [ebp - 0x20], 0xbf48
mov dword [ebp - 0x28], 0xaf072071
mov dword [ebp - 0x34], 0x2a67f6a1
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x3c], 0xff529126
mov dword [ebp - 0x10], eax
jmp 0x10031b56
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc64], 0xd385e13c
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031b45
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
inc dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3bc]
xor eax, eax
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x13
jl 0x10031d00
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031ba2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc74], 0xf77722ab
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031b8a
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031bc2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x59c], 0xc50133ec
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031baa
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x10031bfe
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0x7461d0ee
mov dword [ebp - 0x4c], 0xfffa
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10031bf8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xccc], 0xfffffffc
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031be0
xor eax, eax
dec dword [ebp - 0x4c]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x29
jg 0x10031bc7
mov eax, dword [ebp - 0x59c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3bc]
mov eax, dword [ebp - 0x40]
neg eax
push 0
sbb eax, eax
neg eax
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x13
pop eax
jge 0x10031b82
jmp 0x10031cfe
mov dword [ebp - 0x10], 0x50b8378c
mov dword [ebp - 0x20], 0x59dff04c
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x254], eax
je 0x10031c70
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3bc]
neg ecx
sbb ecx, ecx
neg ecx
imul eax, ecx
test eax, eax
je 0x10031c6e
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10031c6e
mov ecx, esi
jmp 0x10031c72
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, 0x355901a7
setne al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x254]
mov eax, 0xffff
mov dword [ebp - 0x20], eax
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10031ca8
cmp dword [ebp - 0x40], eax
jne 0x10031cac
cmp dword [ebp - 0x20], eax
jne 0x10031cac
mov edx, eax
jmp 0x10031cae
mov edx, esi
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
xor eax, eax
mov ecx, dword [ebp - 0x40]
cmp edx, 0x6b711a46
mov dword [ebp - 0x3bc], ecx
setne al
xor ebx, ebx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
push 3
setl bl
xor edx, edx
neg ebx
cmp eax, ebx
mov eax, dword [ebp - 0x2c]
pop ebx
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
imul ecx, ecx, 0xe437
add ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x4c]
cmp ecx, eax
setne dl
mov dword [ebp - 0x4c], edx
xor eax, eax
mov ecx, 0x799a
mov dword [ebp - 0x6c0], ecx
mov dword [ebp - 0x6bc], ecx
mov dword [ebp - 0x6b8], ecx
mov dword [ebp - 0x6b4], ecx
or ecx, 0xffffffff
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x50], 0xadca
mov dword [ebp - 0x4c], 0xde283bc1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jg 0x10031dff
mov dword [ebp - 0x4c], 0x4272ba7
mov dword [ebp - 0x10], eax
jmp 0x10031d5a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd5c], 0x72ddb74a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10031d49
mov ecx, dword [ebp - 0x4c]
xor edx, edx
mov eax, dword [ebp - 0x4c]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
mov ecx, esi
setge dl
sub ecx, edx
add ecx, dword [ebp + eax*4 - 0x6c0]
je 0x10031d88
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x10031d8a
mov ecx, esi
jmp 0x10031d8c
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, esi
setl al
cmp eax, dword [ebp - 0x50]
je 0x10031da2
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x6c0]
mov eax, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x6c0]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x6c0]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, 0x46e74a6
setge al
mov dword [ebp - 0xd5c], eax
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], al
je 0x10031df0
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
inc dword [ebp - 0x14]
push 0
pop eax
cmp dword [ebp - 0x14], ebx
jle 0x10031d3d
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], 0
je 0x10031e11
push esi
call dword [sym.imp.USER32.dll_ShowCursor]
xor eax, eax
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x20], 0xe4fc2285
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x4c], 0xd64b
mov dword [ebp - 0x10], 0xf4d4e2
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x50], 0xe3164c11
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031e68
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x4e0], 0x4e2bf5f4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031e50
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10031e7e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xbc0], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10031e6d
mov eax, dword [ebp - 0x20]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
neg eax
cmp ecx, eax
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
xor edx, edx
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x4d8], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xbc0], eax
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x4d8], eax
je 0x10031f05
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x4e0], eax
je 0x10031f07
mov ecx, esi
mov eax, dword [ebp - 0x1c]
add eax, 0xc253d5ab
add eax, ecx
je 0x10031f1e
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x10031f20
mov edx, esi
jmp 0x10031f22
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0xbc0]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setne cl
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x34]
setne bl
xor ecx, ecx
cmp ebx, eax
setge cl
xor ebx, ebx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0xbc0]
mov eax, dword [ebp - 0xbc0]
cmp ecx, eax
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4d8]
setle bl
sub ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x2c]
cmp eax, ebx
mov eax, dword [ebp - 0x4d8]
setl dl
imul eax, ecx
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x4e0]
cmp edx, eax
setge cl
mov dword [ebp - 0x10], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xf7f2f1e7
setne cl
xor eax, eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x4c], 0xdf37d45d
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x40], 0x10857b2
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031fde
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xcdc], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031fc6
xor eax, eax
push 3
mov dword [ebp - 0x14], eax
pop ebx
jmp 0x10031ff7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x874], 0x7e6262dc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031fe6
mov dword [ebp - 0x34], esi
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x4c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x10]
sub eax, 0xaf4644de
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
je 0x10032062
mov eax, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x86c]
test eax, eax
mov eax, dword [ebp - 0x50]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x86c]
setne cl
xor edx, edx
sub eax, ecx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x86c]
cmp ecx, eax
setge dl
cmp edx, dword [ebp - 0x874]
jne 0x10032062
mov eax, esi
jmp 0x10032064
xor eax, eax
mov dword [ebp - 0x50], eax
or eax, 0xffffffff
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x2c], 0xae8c
mov dword [ebp - 0x20], 0xfffffffd
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x10], eax
jmp 0x10032096
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe6c], 0xcce1cc0e
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10032085
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
push 6
pop eax
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x10], 0x31c36b5
mov dword [ebp - 0x3c], 0xfff7
mov dword [ebp - 0x4c], 4
mov dword [ebp - 0x50], 0x4d0043d4
mov dword [ebp - 0x34], 0x1743e62c
mov dword [ebp - 0x10], eax
jmp 0x100320eb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x8d4], 0x77562375
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100320da
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x10], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10032125
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setge dl
mov dword [ebp - 0xe68], edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x8d0]
add eax, dword [ebp - 0x10]
je 0x10032123
mov edx, esi
jmp 0x10032127
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, edx
push 0xfffffffffffffff6
setl cl
mov dword [ebp - 0x34], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x8d0]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x2c]
cmp edx, eax
pop eax
setg cl
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x2c], 0xa023703a
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032184
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x148], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10032170
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x100321a4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe84], 0xc558bac0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003218c
xor eax, eax
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x148], 0xffffffe4
jg 0x100321cd
mov eax, dword [ebp - 0xe7c]
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x148]
cmp dword [ebp - 0x148], 0xffffffe4
jle 0x100321b3
xor eax, eax
mov dword [ebp - 0x40], esi
push 9
mov dword [ebp - 0x1c], esi
pop edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x30], 0xf201f9d9
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10032203
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x37c], 0x6240
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100321eb
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032223
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa8], 0x59008cf5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003220b
xor eax, eax
cmp dword [ebp - 0x37c], eax
je 0x1003231e
mov dword [ebp - 0x38], 0x927f
mov dword [ebp - 0x40], 0xfffffffe
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0xf7e44142
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x20], 0xffff
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x10], eax
jmp 0x1003226a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xbf8], 0x9c72
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10032259
mov eax, dword [ebp - 0x37c]
mov eax, dword [ebp - 0x4c]
imul eax, dword [ebp - 0x4c]
test eax, eax
jne 0x1003228a
mov dword [ebp - 0x20], 0x83de37d6
xor ecx, ecx
mov dword [ebp - 0x10], eax
or eax, 0xffffffff
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xa8], esi
mov eax, dword [ebp - 0x20]
cmp eax, esi
setl cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x10032368
mov eax, esi
neg eax
cmp eax, esi
mov eax, dword [ebp - 0x28]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x100323a0
cmp dword [ebp - 0x40], eax
je 0x100323a0
cmp dword [ebp - 0x10], eax
je 0x100323a0
mov eax, esi
mov ecx, dword [ebp - 0x28]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x20]
neg ecx
cmp ecx, eax
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp eax, edx
setle cl
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0xa8]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x100323d9
cmp dword [ebp - 0x37c], eax
je 0x100323db
mov eax, esi
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, 0x5cd22ffd
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
add ecx, dword [ebp - 0x30]
cmp edx, ecx
setne al
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x3c], 0x8ef8a6eb
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10032434