Function at 0x437c90
Capabilities:
Check os version
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47dd08
push 0x40e3c0
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x15e8
call fcn.00418010
mov eax, dword [0x481398]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x2c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x437ce6
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1c
jge 0x437d17
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jge 0x437cff
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437d15
mov dword [ebp - 0x1c], 0
jmp 0x437cdd
mov dword [ebp - 0x24], 0
jmp 0x437d29
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 4
jge 0x437d6d
cmp dword [ebp - 0x1c], 0
jge 0x437d3d
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437d53
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x28], 0xfa
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x437d20
mov dword [ebp - 4], 0
mov dword [ebp - 0x22c], 0
jmp 0x437d8f
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0x13
jge 0x437dca
mov eax, dword [ebp - 0x22c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x437dbe
mov eax, dword [ebp - 0x22c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x437dc5
and eax, 0xbc614e
jmp 0x437dc8
mov dword [ebp - 0x1c], eax
jmp 0x437d80
mov dword [ebp - 4], 0xfffffffe
call fcn.00437dd8
jmp 0x437de0
mov dword [ebp - 0x230], 0
jmp 0x437dfb
mov edx, dword [ebp - 0x230]
add edx, 1
mov dword [ebp - 0x230], edx
cmp dword [ebp - 0x230], 0x1b
jge 0x437e32
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x230]
mov dword [ebp - 0x1c], eax
jge 0x437e1a
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437e30
mov dword [ebp - 0x1c], 0
jmp 0x437dec
mov edx, 1
test edx, edx
je 0x437e6c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x437e5e
jmp 0x437e6c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], edx
jmp 0x437e32
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x238], 0
jmp 0x437e90
mov ecx, dword [ebp - 0x238]
add ecx, 1
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x10
jge 0x437ec7
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x238]
mov dword [ebp - 0x1c], edx
jge 0x437eaf
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437ec5
mov dword [ebp - 0x1c], 0
jmp 0x437e81
mov dword [ebp - 0x23c], 0
mov edx, 1
test edx, edx
je 0x437f1b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x437efd
jmp 0x437f1b
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x23c]
add eax, 1
mov dword [ebp - 0x23c], eax
jmp 0x437ed1
mov ecx, dword [ebp - 0x1c]
add ecx, 0x16
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x244], 0
jmp 0x437f3f
mov edx, dword [ebp - 0x244]
add edx, 1
mov dword [ebp - 0x244], edx
cmp dword [ebp - 0x244], 0x1d
jge 0x437f8c
cmp dword [ebp - 0x1c], 0
jge 0x437f56
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437f6c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x248], 0xfa
lea edx, [ebp - 0x248]
push edx
lea eax, [ebp - 0x440]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x437f30
mov dword [ebp - 0x444], 0
jmp 0x437fa7
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
cmp dword [ebp - 0x444], 3
jge 0x437ff4
cmp dword [ebp - 0x1c], 0
jge 0x437fbe
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x437fd4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x448], 0xfa
lea edx, [ebp - 0x448]
push edx
lea eax, [ebp - 0x640]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x437f98
mov dword [ebp - 0x644], 0
jmp 0x43800f
mov ecx, dword [ebp - 0x644]
add ecx, 1
mov dword [ebp - 0x644], ecx
cmp dword [ebp - 0x644], 2
jge 0x438046
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x644]
mov dword [ebp - 0x1c], edx
jge 0x43802e
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438044
mov dword [ebp - 0x1c], 0
jmp 0x438000
mov dword [ebp - 0x648], 0
jmp 0x438061
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
cmp dword [ebp - 0x648], 6
jge 0x438098
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x648]
mov dword [ebp - 0x1c], eax
jge 0x438080
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438096
mov dword [ebp - 0x1c], 0
jmp 0x438052
mov dword [ebp - 0x64c], 0
mov edx, 1
test edx, edx
je 0x4380ec
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x650]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4380ce
jmp 0x4380ec
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x64c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x64c]
add eax, 1
mov dword [ebp - 0x64c], eax
jmp 0x4380a2
mov ecx, dword [ebp - 0x1c]
add ecx, 5
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x654], 0
mov edx, 1
test edx, edx
je 0x438149
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x658], eax
mov eax, dword [ebp - 0x658]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x43812b
jmp 0x438149
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x654]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x654]
add eax, 1
mov dword [ebp - 0x654], eax
jmp 0x4380ff
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x65c], 1
mov dword [ebp - 0x660], 1
mov dword [ebp - 0x664], 2
mov dword [ebp - 0x668], 0
mov dword [ebp - 0x66c], 0
jmp 0x438195
mov edx, dword [ebp - 0x66c]
add edx, 1
mov dword [ebp - 0x66c], edx
cmp dword [ebp - 0x66c], 5
jge 0x4381d6
mov eax, dword [ebp - 0x65c]
add eax, dword [ebp - 0x660]
mov dword [ebp - 0x664], eax
mov ecx, dword [ebp - 0x660]
mov dword [ebp - 0x65c], ecx
mov edx, dword [ebp - 0x664]
mov dword [ebp - 0x660], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x664]
mov dword [ebp - 0x1c], eax
jmp 0x438186
mov ecx, dword [ebp - 0x1c]
add ecx, 5
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 1
mov dword [ebp - 0x670], 0
jmp 0x438201
mov edx, dword [ebp - 0x670]
add edx, 1
mov dword [ebp - 0x670], edx
cmp dword [ebp - 0x670], 4
jge 0x43823c
mov eax, dword [ebp - 0x670]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x438230
mov eax, dword [ebp - 0x670]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x438237
and eax, 0xbc614e
jmp 0x43823a
mov dword [ebp - 0x1c], eax
jmp 0x4381f2
mov dword [ebp - 4], 0xfffffffe
call fcn.0043824a
jmp 0x438252
mov dword [ebp - 0x674], 0
jmp 0x43826d
mov edx, dword [ebp - 0x674]
add edx, 1
mov dword [ebp - 0x674], edx
cmp dword [ebp - 0x674], 4
jge 0x4382a4
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x674]
mov dword [ebp - 0x1c], eax
jge 0x43828c
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4382a2
mov dword [ebp - 0x1c], 0
jmp 0x43825e
mov dword [ebp - 0x678], 0
mov edx, 1
test edx, edx
je 0x4382f8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x67c], eax
mov eax, dword [ebp - 0x67c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4382da
jmp 0x4382f8
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x678]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x678]
add eax, 1
mov dword [ebp - 0x678], eax
jmp 0x4382ae
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x680], 0
jmp 0x43831c
mov edx, dword [ebp - 0x680]
add edx, 1
mov dword [ebp - 0x680], edx
cmp dword [ebp - 0x680], 2
jge 0x438333
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x680]
mov dword [ebp - 0x1c], eax
jmp 0x43830d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x438345
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x43835d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x684], 0
jmp 0x438378
mov edx, dword [ebp - 0x684]
add edx, 1
mov dword [ebp - 0x684], edx
cmp dword [ebp - 0x684], 5
jge 0x43838f
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x684]
mov dword [ebp - 0x1c], eax
jmp 0x438369
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4383a1
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4383b9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x688], 0
jmp 0x4383db
mov edx, dword [ebp - 0x688]
add edx, 1
mov dword [ebp - 0x688], edx
cmp dword [ebp - 0x688], 5
jge 0x438416
mov eax, dword [ebp - 0x688]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x43840a
mov eax, dword [ebp - 0x688]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x438411
and eax, 0xbc614e
jmp 0x438414
mov dword [ebp - 0x1c], eax
jmp 0x4383cc
mov dword [ebp - 4], 0xfffffffe
call fcn.00438424
jmp 0x43842c
mov dword [ebp - 0x68c], 0
jmp 0x438447
mov edx, dword [ebp - 0x68c]
add edx, 1
mov dword [ebp - 0x68c], edx
cmp dword [ebp - 0x68c], 2
jge 0x43847e
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x68c]
mov dword [ebp - 0x1c], eax
jge 0x438466
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x43847c
mov dword [ebp - 0x1c], 0
jmp 0x438438
mov dword [ebp - 0x690], 0
mov edx, 1
test edx, edx
je 0x4384d2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x694], eax
mov eax, dword [ebp - 0x694]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4384b4
jmp 0x4384d2
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x690]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x690]
add eax, 1
mov dword [ebp - 0x690], eax
jmp 0x438488
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x438515
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x698]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x438507
jmp 0x438515
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x698]
mov dword [ebp - 0x1c], edx
jmp 0x4384db
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x69c], 0
mov ecx, 1
test ecx, ecx
je 0x43856f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6a0], eax
mov eax, dword [ebp - 0x6a0]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x438551
jmp 0x43856f
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x69c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x69c]
add eax, 1
mov dword [ebp - 0x69c], eax
jmp 0x438525
mov ecx, dword [ebp - 0x1c]
add ecx, 5
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x6a4], 0
mov edx, 1
test edx, edx
je 0x4385cc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6a8], eax
mov eax, dword [ebp - 0x6a8]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4385ae
jmp 0x4385cc
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x6a4]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x6a4]
add eax, 1
mov dword [ebp - 0x6a4], eax
jmp 0x438582
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x6ac], 1
mov dword [ebp - 0x6b0], 1
mov dword [ebp - 0x6b4], 2
mov dword [ebp - 0x6b8], 0
mov dword [ebp - 0x6bc], 0
jmp 0x438618
mov edx, dword [ebp - 0x6bc]
add edx, 1
mov dword [ebp - 0x6bc], edx
cmp dword [ebp - 0x6bc], 4
jge 0x438659
mov eax, dword [ebp - 0x6ac]
add eax, dword [ebp - 0x6b0]
mov dword [ebp - 0x6b4], eax
mov ecx, dword [ebp - 0x6b0]
mov dword [ebp - 0x6ac], ecx
mov edx, dword [ebp - 0x6b4]
mov dword [ebp - 0x6b0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x6b4]
mov dword [ebp - 0x1c], eax
jmp 0x438609
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x6c0], 0
jmp 0x43867d
mov edx, dword [ebp - 0x6c0]
add edx, 1
mov dword [ebp - 0x6c0], edx
cmp dword [ebp - 0x6c0], 0
jge 0x4386b4
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x6c0]
mov dword [ebp - 0x1c], eax
jge 0x43869c
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4386b2
mov dword [ebp - 0x1c], 0
jmp 0x43866e
mov dword [ebp - 0x6c4], 0
jmp 0x4386cf
mov edx, dword [ebp - 0x6c4]
add edx, 1
mov dword [ebp - 0x6c4], edx
cmp dword [ebp - 0x6c4], 5
jge 0x4386e6
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x6c4]
mov dword [ebp - 0x1c], eax
jmp 0x4386c0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4386f8
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x438710
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6c8], 0
mov edx, 1
test edx, edx
je 0x438764
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6cc], eax
mov eax, dword [ebp - 0x6cc]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x438746
jmp 0x438764
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x6c8]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x6c8]
add eax, 1
mov dword [ebp - 0x6c8], eax
jmp 0x43871a
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 3
mov dword [ebp - 0x6d0], 0
jmp 0x43878c
mov edx, dword [ebp - 0x6d0]
add edx, 1
mov dword [ebp - 0x6d0], edx
cmp dword [ebp - 0x6d0], 0
jge 0x4387c7
mov eax, dword [ebp - 0x6d0]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4387bb
mov eax, dword [ebp - 0x6d0]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4387c2
and eax, 0xbc614e
jmp 0x4387c5
mov dword [ebp - 0x1c], eax
jmp 0x43877d
mov dword [ebp - 4], 0xfffffffe
call fcn.004387d5
jmp 0x4387dd
mov dword [ebp - 4], 4
mov dword [ebp - 0x6d4], 0
jmp 0x4387ff
mov edx, dword [ebp - 0x6d4]
add edx, 1
mov dword [ebp - 0x6d4], edx
cmp dword [ebp - 0x6d4], 1
jge 0x43883a
mov eax, dword [ebp - 0x6d4]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x43882e
mov eax, dword [ebp - 0x6d4]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x438835
and eax, 0xbc614e
jmp 0x438838
mov dword [ebp - 0x1c], eax
jmp 0x4387f0
mov dword [ebp - 4], 0xfffffffe
call fcn.00438848
jmp 0x438850
mov dword [ebp - 0x6d8], 0
jmp 0x43886b
mov edx, dword [ebp - 0x6d8]
add edx, 1
mov dword [ebp - 0x6d8], edx
cmp dword [ebp - 0x6d8], 4
jge 0x4388a2
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x1c], eax
jge 0x43888a
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4388a0
mov dword [ebp - 0x1c], 0
jmp 0x43885c
mov edx, 1
test edx, edx
je 0x4388dc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6dc], eax
mov eax, dword [ebp - 0x6dc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4388ce
jmp 0x4388dc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x6dc]
mov dword [ebp - 0x1c], edx
jmp 0x4388a2
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x6e0], 0
jmp 0x438904
mov ecx, dword [ebp - 0x6e0]
add ecx, 1
mov dword [ebp - 0x6e0], ecx
cmp dword [ebp - 0x6e0], 0
jge 0x43893f
mov eax, dword [ebp - 0x6e0]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x438933
mov eax, dword [ebp - 0x6e0]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x43893a
and eax, 0xbc614e
jmp 0x43893d
mov dword [ebp - 0x1c], eax
jmp 0x4388f5
mov dword [ebp - 4], 0xfffffffe
call fcn.0043894d
jmp 0x438955
mov dword [ebp - 0x6e4], 0
jmp 0x438970
mov edx, dword [ebp - 0x6e4]
add edx, 1
mov dword [ebp - 0x6e4], edx
cmp dword [ebp - 0x6e4], 2
jge 0x438987
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x6e4]
mov dword [ebp - 0x1c], eax
jmp 0x438961
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x438999
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4389b1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6e8], 0
jmp 0x4389cc
mov edx, dword [ebp - 0x6e8]
add edx, 1
mov dword [ebp - 0x6e8], edx
cmp dword [ebp - 0x6e8], 4
jge 0x438a19
cmp dword [ebp - 0x1c], 0
jge 0x4389e3
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4389f9
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x6ec], 0xfa
lea edx, [ebp - 0x6ec]
push edx
lea eax, [ebp - 0x8e8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4389bd
mov dword [ebp - 0x8ec], 0
jmp 0x438a34
mov ecx, dword [ebp - 0x8ec]
add ecx, 1
mov dword [ebp - 0x8ec], ecx
cmp dword [ebp - 0x8ec], 0
jge 0x438a4b
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x8ec]
mov dword [ebp - 0x1c], edx
jmp 0x438a25
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x438a5d
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x438a75
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8f0], 0
jmp 0x438a90
mov edx, dword [ebp - 0x8f0]
add edx, 1
mov dword [ebp - 0x8f0], edx
cmp dword [ebp - 0x8f0], 0
jge 0x438aa7
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x8f0]
mov dword [ebp - 0x1c], eax
jmp 0x438a81
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x438ab9
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x438ad1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8f4], 0
jmp 0x438aec
mov edx, dword [ebp - 0x8f4]
add edx, 1
mov dword [ebp - 0x8f4], edx
cmp dword [ebp - 0x8f4], 0
jge 0x438b03
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x1c], eax
jmp 0x438add
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x438b15
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x438b2d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8f8], 0
jmp 0x438b48
mov edx, dword [ebp - 0x8f8]
add edx, 1
mov dword [ebp - 0x8f8], edx
cmp dword [ebp - 0x8f8], 2
jge 0x438b7f
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x8f8]
mov dword [ebp - 0x1c], eax
jge 0x438b67
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438b7d
mov dword [ebp - 0x1c], 0
jmp 0x438b39
mov edx, 1
test edx, edx
je 0x438bb9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8fc], eax
mov eax, dword [ebp - 0x8fc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x438bab
jmp 0x438bb9
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x8fc]
mov dword [ebp - 0x1c], edx
jmp 0x438b7f
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x900], 1
mov dword [ebp - 0x904], 1
mov dword [ebp - 0x908], 2
mov dword [ebp - 0x90c], 0
mov dword [ebp - 0x910], 0
jmp 0x438c05
mov ecx, dword [ebp - 0x910]
add ecx, 1
mov dword [ebp - 0x910], ecx
cmp dword [ebp - 0x910], 2
jge 0x438c46
mov edx, dword [ebp - 0x900]
add edx, dword [ebp - 0x904]
mov dword [ebp - 0x908], edx
mov eax, dword [ebp - 0x904]
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0x908]
mov dword [ebp - 0x904], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x908]
mov dword [ebp - 0x1c], edx
jmp 0x438bf6
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x914], 0
mov ecx, 1
test ecx, ecx
je 0x438ca3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x918], eax
mov eax, dword [ebp - 0x918]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x438c85
jmp 0x438ca3
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x914]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x914]
add eax, 1
mov dword [ebp - 0x914], eax
jmp 0x438c59
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x91c], 0
mov edx, 1
test edx, edx
je 0x438d00
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x920], eax
mov eax, dword [ebp - 0x920]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x438ce2
jmp 0x438d00
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x91c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x91c]
add eax, 1
mov dword [ebp - 0x91c], eax
jmp 0x438cb6
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x924], 0
mov edx, 1
test edx, edx
je 0x438d5d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x928], eax
mov eax, dword [ebp - 0x928]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x438d3f
jmp 0x438d5d
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x924]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x924]
add eax, 1
mov dword [ebp - 0x924], eax
jmp 0x438d13
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x438d9d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x92c], eax
mov eax, dword [ebp - 0x92c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x438d8f
jmp 0x438d9d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x92c]
mov dword [ebp - 0x1c], edx
jmp 0x438d63
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x930], 0
jmp 0x438dc1
mov ecx, dword [ebp - 0x930]
add ecx, 1
mov dword [ebp - 0x930], ecx
cmp dword [ebp - 0x930], 0
jge 0x438e0e
cmp dword [ebp - 0x1c], 0
jge 0x438dd8
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438dee
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x934], 0xfa
lea edx, [ebp - 0x934]
push edx
lea eax, [ebp - 0xb30]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x438db2
mov dword [ebp - 0xb34], 0
jmp 0x438e29
mov ecx, dword [ebp - 0xb34]
add ecx, 1
mov dword [ebp - 0xb34], ecx
cmp dword [ebp - 0xb34], 0
jge 0x438e76
cmp dword [ebp - 0x1c], 0
jge 0x438e40
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438e56
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xb38], 0xfa
lea edx, [ebp - 0xb38]
push edx
lea eax, [ebp - 0xd30]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x438e1a
mov ecx, 1
test ecx, ecx
je 0x438eb0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd34], eax
mov eax, dword [ebp - 0xd34]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x438ea2
jmp 0x438eb0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xd34]
mov dword [ebp - 0x1c], edx
jmp 0x438e76
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd38], 0
jmp 0x438ed4
mov ecx, dword [ebp - 0xd38]
add ecx, 1
mov dword [ebp - 0xd38], ecx
cmp dword [ebp - 0xd38], 1
jge 0x438f21
cmp dword [ebp - 0x1c], 0
jge 0x438eeb
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438f01
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd3c], 0xfa
lea edx, [ebp - 0xd3c]
push edx
lea eax, [ebp - 0xf38]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x438ec5
mov dword [ebp - 0xf3c], 0
jmp 0x438f3c
mov ecx, dword [ebp - 0xf3c]
add ecx, 1
mov dword [ebp - 0xf3c], ecx
cmp dword [ebp - 0xf3c], 4
jge 0x438f89
cmp dword [ebp - 0x1c], 0
jge 0x438f53
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x438f69
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xf40], 0xfa
lea edx, [ebp - 0xf40]
push edx
lea eax, [ebp - 0x1138]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x438f2d
mov dword [ebp - 4], 6
mov dword [ebp - 0x113c], 0
jmp 0x438fab
mov ecx, dword [ebp - 0x113c]
add ecx, 1
mov dword [ebp - 0x113c], ecx
cmp dword [ebp - 0x113c], 0
jge 0x438fe6
mov eax, dword [ebp - 0x113c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x438fda
mov eax, dword [ebp - 0x113c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x438fe1
and eax, 0xbc614e
jmp 0x438fe4
mov dword [ebp - 0x1c], eax
jmp 0x438f9c
mov dword [ebp - 4], 0xfffffffe
call fcn.00438ff4
jmp 0x438ffc
mov dword [ebp - 0x1140], 0
mov edx, 1
test edx, edx
je 0x439050
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1144], eax
mov eax, dword [ebp - 0x1144]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x439032
jmp 0x439050
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1140]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1140]
add eax, 1
mov dword [ebp - 0x1140], eax
jmp 0x439006
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 7
mov dword [ebp - 0x1148], 0
jmp 0x439078
mov edx, dword [ebp - 0x1148]
add edx, 1
mov dword [ebp - 0x1148], edx
cmp dword [ebp - 0x1148], 3
jge 0x4390b3
mov eax, dword [ebp - 0x1148]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4390a7
mov eax, dword [ebp - 0x1148]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4390ae
and eax, 0xbc614e
jmp 0x4390b1
mov dword [ebp - 0x1c], eax
jmp 0x439069
mov dword [ebp - 4], 0xfffffffe
call fcn.004390c1
jmp 0x4390c9
mov edx, 1
test edx, edx
je 0x439103
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x114c], eax
mov eax, dword [ebp - 0x114c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4390f5
jmp 0x439103
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x114c]
mov dword [ebp - 0x1c], edx
jmp 0x4390c9
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x439146
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1150], eax
mov eax, dword [ebp - 0x1150]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x439138
jmp 0x439146
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1150]
mov dword [ebp - 0x1c], edx
jmp 0x43910c
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1154], 0
jmp 0x43916a
mov ecx, dword [ebp - 0x1154]
add ecx, 1
mov dword [ebp - 0x1154], ecx
cmp dword [ebp - 0x1154], 1
jge 0x439181
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1154]
mov dword [ebp - 0x1c], edx
jmp 0x43915b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x439193
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4391ab
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1158], 1
mov dword [ebp - 0x115c], 1
mov dword [ebp - 0x1160], 2
mov dword [ebp - 0x1164], 0
mov dword [ebp - 0x1168], 0
jmp 0x4391ee
mov edx, dword [ebp - 0x1168]
add edx, 1
mov dword [ebp - 0x1168], edx
cmp dword [ebp - 0x1168], 3
jge 0x43922f
mov eax, dword [ebp - 0x1158]
add eax, dword [ebp - 0x115c]
mov dword [ebp - 0x1160], eax
mov ecx, dword [ebp - 0x115c]
mov dword [ebp - 0x1158], ecx
mov edx, dword [ebp - 0x1160]
mov dword [ebp - 0x115c], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x1160]
mov dword [ebp - 0x1c], eax
jmp 0x4391df
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x116c], 0
jmp 0x439253
mov edx, dword [ebp - 0x116c]
add edx, 1
mov dword [ebp - 0x116c], edx
cmp dword [ebp - 0x116c], 1
jge 0x43928a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x116c]
mov dword [ebp - 0x1c], eax
jge 0x439272
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x439288
mov dword [ebp - 0x1c], 0
jmp 0x439244
mov dword [ebp - 0x1170], 0
jmp 0x4392a5
mov edx, dword [ebp - 0x1170]
add edx, 1
mov dword [ebp - 0x1170], edx
cmp dword [ebp - 0x1170], 1
jge 0x4392dc
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1170]
mov dword [ebp - 0x1c], eax
jge 0x4392c4
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4392da
mov dword [ebp - 0x1c], 0
jmp 0x439296
mov dword [ebp - 0x1174], 0
mov edx, 1
test edx, edx
je 0x439330
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1178], eax
mov eax, dword [ebp - 0x1178]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x439312
jmp 0x439330
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1174]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1174]
add eax, 1
mov dword [ebp - 0x1174], eax
jmp 0x4392e6
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x117c], 1
mov dword [ebp - 0x1180], 1
mov dword [ebp - 0x1184], 2
mov dword [ebp - 0x1188], 0
mov dword [ebp - 0x118c], 0
jmp 0x43937c
mov edx, dword [ebp - 0x118c]
add edx, 1
mov dword [ebp - 0x118c], edx
cmp dword [ebp - 0x118c], 2
jge 0x4393bd
mov eax, dword [ebp - 0x117c]
add eax, dword [ebp - 0x1180]
mov dword [ebp - 0x1184], eax
mov ecx, dword [ebp - 0x1180]
mov dword [ebp - 0x117c], ecx
mov edx, dword [ebp - 0x1184]
mov dword [ebp - 0x1180], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x1184]
mov dword [ebp - 0x1c], eax
jmp 0x43936d
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1190], 0
jmp 0x4393e1
cmp dword [ebp - 0x1190], 4
jge 0x4393f8