Function at 0x439450
Capabilities:
Check os version
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510a20
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x3f84
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x40], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x4394a9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x4394ba
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x4394a0
cmp dword [ebp - 0x1c], 0
jge 0x4394c8
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 0x4394e0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x4394f2
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0x12
jge 0x439530
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x439518
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x439525
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x43952e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x4394e9
mov dword [ebp - 0x28], 0
jmp 0x439542
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], 0x3e
jge 0x439553
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x439539
cmp dword [ebp - 0x1c], 0
jge 0x439561
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 0x439579
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x439599
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 8
jge 0x4395c2
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4395b7
mov edx, dword [ebp - 0x2c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x439590
mov dword [ebp - 4], 0xfffffffe
jmp 0x4395e2
mov dword [ebp - 0x34], 0
jmp 0x4395f4
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0x1a
jge 0x439605
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
jmp 0x4395eb
cmp dword [ebp - 0x1c], 0
jge 0x439613
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 0x43962b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x38], 0
jmp 0x43963d
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0x1c
jge 0x43964e
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x38]
mov dword [ebp - 0x1c], eax
jmp 0x439634
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x439660
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 0x439678
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x3c], 0
jmp 0x43968a
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 0xd
jge 0x4396c8
cmp dword [ebp - 0x1c], 0
jge 0x43969e
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
je 0x4396b4
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x238]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x439681
mov eax, 1
test eax, eax
je 0x439702
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4396f4
jmp 0x439702
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x4396c8
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x240], 0
jmp 0x439723
mov ecx, dword [ebp - 0x240]
add ecx, 1
mov dword [ebp - 0x240], ecx
cmp dword [ebp - 0x240], 5
jge 0x439770
cmp dword [ebp - 0x1c], 0
jge 0x43973a
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 0x439750
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x244], 0xfa
lea edx, [ebp - 0x244]
push edx
lea eax, [ebp - 0x440]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x439714
mov dword [ebp - 0x444], 0
jmp 0x43978b
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
cmp dword [ebp - 0x444], 7
jge 0x4397cc
cmp dword [ebp - 0x1c], 0
jge 0x4397a2
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
je 0x4397b8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x640]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x43977c
mov dword [ebp - 0x644], 0
jmp 0x4397e7
mov eax, dword [ebp - 0x644]
add eax, 1
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 2
jge 0x439828
cmp dword [ebp - 0x1c], 0
jge 0x4397fe
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
je 0x439814
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x840]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4397d8
mov dword [ebp - 4], 1
mov dword [ebp - 0x844], 0xffffffff
mov dword [ebp - 0x848], 0
jmp 0x439854
mov eax, dword [ebp - 0x848]
add eax, 1
mov dword [ebp - 0x848], eax
cmp dword [ebp - 0x848], 9
jge 0x439886
mov eax, dword [ebp - 0x848]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43987b
mov edx, dword [ebp - 0x844]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x439845
mov dword [ebp - 4], 0xfffffffe
jmp 0x4398a6
mov dword [ebp - 0x84c], 0
jmp 0x4398c1
mov edx, dword [ebp - 0x84c]
add edx, 1
mov dword [ebp - 0x84c], edx
cmp dword [ebp - 0x84c], 3
jge 0x4398d8
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], eax
jmp 0x4398b2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4398ea
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 0x439902
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x850], 0
jmp 0x43991d
mov edx, dword [ebp - 0x850]
add edx, 1
mov dword [ebp - 0x850], edx
cmp dword [ebp - 0x850], 4
jge 0x439934
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x850]
mov dword [ebp - 0x1c], eax
jmp 0x43990e
cmp dword [ebp - 0x1c], 0
jge 0x439942
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 0x43995a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x854], 0xffffffff
mov dword [ebp - 0x858], 0
jmp 0x439986
mov edx, dword [ebp - 0x858]
add edx, 1
mov dword [ebp - 0x858], edx
cmp dword [ebp - 0x858], 0xe
jge 0x4399b8
mov eax, dword [ebp - 0x858]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4399ad
mov edx, dword [ebp - 0x854]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x439977
mov dword [ebp - 4], 0xfffffffe
jmp 0x4399d8
mov dword [ebp - 0x85c], 0
jmp 0x4399f3
mov edx, dword [ebp - 0x85c]
add edx, 1
mov dword [ebp - 0x85c], edx
cmp dword [ebp - 0x85c], 0xe
jge 0x439a0a
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], eax
jmp 0x4399e4
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x439a1c
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 0x439a34
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x860], 0
jmp 0x439a4f
mov edx, dword [ebp - 0x860]
add edx, 1
mov dword [ebp - 0x860], edx
cmp dword [ebp - 0x860], 5
jge 0x439a66
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x860]
mov dword [ebp - 0x1c], eax
jmp 0x439a40
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x439a78
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 0x439a90
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x864], 0
jmp 0x439aab
mov edx, dword [ebp - 0x864]
add edx, 1
mov dword [ebp - 0x864], edx
cmp dword [ebp - 0x864], 0xd
jge 0x439ac2
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x864]
mov dword [ebp - 0x1c], eax
jmp 0x439a9c
cmp dword [ebp - 0x1c], 0
jge 0x439ad0
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 0x439ae8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x868], 0
jmp 0x439b03
mov edx, dword [ebp - 0x868]
add edx, 1
mov dword [ebp - 0x868], edx
cmp dword [ebp - 0x868], 0xe
jge 0x439b44
cmp dword [ebp - 0x1c], 0
jge 0x439b1a
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
je 0x439b30
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x439af4
mov dword [ebp - 0xa64], 0
jmp 0x439b5f
mov eax, dword [ebp - 0xa64]
add eax, 1
mov dword [ebp - 0xa64], eax
cmp dword [ebp - 0xa64], 9
jge 0x439bac
mov eax, dword [ebp - 0xa64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x439b8e
mov eax, dword [ebp - 0xa64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x439b9e
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], edx
jmp 0x439baa
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], eax
jmp 0x439b50
mov dword [ebp - 0xa68], 0
jmp 0x439bc7
mov ecx, dword [ebp - 0xa68]
add ecx, 1
mov dword [ebp - 0xa68], ecx
cmp dword [ebp - 0xa68], 0
jge 0x439c08
cmp dword [ebp - 0x1c], 0
jge 0x439bde
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
je 0x439bf4
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x439bb8
mov dword [ebp - 0xc64], 0
jmp 0x439c23
mov eax, dword [ebp - 0xc64]
add eax, 1
mov dword [ebp - 0xc64], eax
cmp dword [ebp - 0xc64], 0xc
jge 0x439c70
mov eax, dword [ebp - 0xc64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x439c52
mov eax, dword [ebp - 0xc64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x439c62
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc64]
mov dword [ebp - 0x1c], edx
jmp 0x439c6e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc64]
mov dword [ebp - 0x1c], eax
jmp 0x439c14
mov dword [ebp - 0xc68], 0
jmp 0x439c8b
mov ecx, dword [ebp - 0xc68]
add ecx, 1
mov dword [ebp - 0xc68], ecx
cmp dword [ebp - 0xc68], 0
jge 0x439ccc
cmp dword [ebp - 0x1c], 0
jge 0x439ca2
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
je 0x439cb8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x439c7c
mov dword [ebp - 4], 3
mov dword [ebp - 0xe64], 0xffffffff
mov dword [ebp - 0xe68], 0
jmp 0x439cf8
mov eax, dword [ebp - 0xe68]
add eax, 1
mov dword [ebp - 0xe68], eax
cmp dword [ebp - 0xe68], 2
jge 0x439d2a
mov eax, dword [ebp - 0xe68]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x439d1f
mov edx, dword [ebp - 0xe64]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x439ce9
mov dword [ebp - 4], 0xfffffffe
jmp 0x439d4a
mov dword [ebp - 0xe6c], 0
jmp 0x439d65
mov edx, dword [ebp - 0xe6c]
add edx, 1
mov dword [ebp - 0xe6c], edx
cmp dword [ebp - 0xe6c], 4
jge 0x439db2
cmp dword [ebp - 0x1c], 0
jge 0x439d7c
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 0x439d92
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe70], 0xfa
lea edx, [ebp - 0xe70]
push edx
lea eax, [ebp - 0x1068]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x439d56
mov dword [ebp - 0x106c], 0
jmp 0x439dcd
mov ecx, dword [ebp - 0x106c]
add ecx, 1
mov dword [ebp - 0x106c], ecx
cmp dword [ebp - 0x106c], 7
jge 0x439e1a
mov eax, dword [ebp - 0x106c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x439dfc
mov eax, dword [ebp - 0x106c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x439e0c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x106c]
mov dword [ebp - 0x1c], edx
jmp 0x439e18
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x106c]
mov dword [ebp - 0x1c], eax
jmp 0x439dbe
mov dword [ebp - 0x1070], 0
jmp 0x439e35
mov ecx, dword [ebp - 0x1070]
add ecx, 1
mov dword [ebp - 0x1070], ecx
cmp dword [ebp - 0x1070], 4
jge 0x439e82
cmp dword [ebp - 0x1c], 0
jge 0x439e4c
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 0x439e62
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1074], 0xfa
lea edx, [ebp - 0x1074]
push edx
lea eax, [ebp - 0x1270]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x439e26
mov dword [ebp - 0x1274], 0
jmp 0x439e9d
mov ecx, dword [ebp - 0x1274]
add ecx, 1
mov dword [ebp - 0x1274], ecx
cmp dword [ebp - 0x1274], 7
jge 0x439eb4
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1274]
mov dword [ebp - 0x1c], edx
jmp 0x439e8e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x439ec6
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 0x439ede
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x1278], 0xffffffff
mov dword [ebp - 0x127c], 0
jmp 0x439f0a
mov edx, dword [ebp - 0x127c]
add edx, 1
mov dword [ebp - 0x127c], edx
cmp dword [ebp - 0x127c], 0
jge 0x439f3c
mov eax, dword [ebp - 0x127c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x439f31
mov edx, dword [ebp - 0x1278]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x439efb
mov dword [ebp - 4], 0xfffffffe
jmp 0x439f5c
mov dword [ebp - 0x1280], 0
jmp 0x439f77
mov edx, dword [ebp - 0x1280]
add edx, 1
mov dword [ebp - 0x1280], edx
cmp dword [ebp - 0x1280], 2
jge 0x439fc4
mov eax, dword [ebp - 0x1280]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x439fa6
mov eax, dword [ebp - 0x1280]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x439fb6
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1280]
mov dword [ebp - 0x1c], edx
jmp 0x439fc2
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1280]
mov dword [ebp - 0x1c], eax
jmp 0x439f68
mov dword [ebp - 0x1284], 0
jmp 0x439fdf
mov ecx, dword [ebp - 0x1284]
add ecx, 1
mov dword [ebp - 0x1284], ecx
cmp dword [ebp - 0x1284], 0
jge 0x43a020
cmp dword [ebp - 0x1c], 0
jge 0x439ff6
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
je 0x43a00c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1480]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x439fd0
mov dword [ebp - 0x1484], 0
jmp 0x43a03b
mov eax, dword [ebp - 0x1484]
add eax, 1
mov dword [ebp - 0x1484], eax
cmp dword [ebp - 0x1484], 1
jge 0x43a088
cmp dword [ebp - 0x1c], 0
jge 0x43a052
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 0x43a068
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1488], 0xfa
lea edx, [ebp - 0x1488]
push edx
lea eax, [ebp - 0x1680]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x43a02c
mov dword [ebp - 4], 5
mov dword [ebp - 0x1684], 0xffffffff
mov dword [ebp - 0x1688], 0
jmp 0x43a0b4
mov ecx, dword [ebp - 0x1688]
add ecx, 1
mov dword [ebp - 0x1688], ecx
cmp dword [ebp - 0x1688], 7
jge 0x43a0e6
mov eax, dword [ebp - 0x1688]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43a0db
mov edx, dword [ebp - 0x1684]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x43a0a5
mov dword [ebp - 4], 0xfffffffe
jmp 0x43a106
mov dword [ebp - 4], 6
mov dword [ebp - 0x168c], 0xffffffff
mov dword [ebp - 0x1690], 0
jmp 0x43a132
mov edx, dword [ebp - 0x1690]
add edx, 1
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 4
jge 0x43a164
mov eax, dword [ebp - 0x1690]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43a159
mov edx, dword [ebp - 0x168c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x43a123
mov dword [ebp - 4], 0xfffffffe
jmp 0x43a184
mov dword [ebp - 0x1694], 0
jmp 0x43a19f
mov edx, dword [ebp - 0x1694]
add edx, 1
mov dword [ebp - 0x1694], edx
cmp dword [ebp - 0x1694], 7
jge 0x43a1ec
mov eax, dword [ebp - 0x1694]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43a1ce
mov eax, dword [ebp - 0x1694]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43a1de
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], edx
jmp 0x43a1ea
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], eax
jmp 0x43a190
mov ecx, 1
test ecx, ecx
je 0x43a226
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1698], eax
mov eax, dword [ebp - 0x1698]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x43a218
jmp 0x43a226
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1698]
mov dword [ebp - 0x1c], edx
jmp 0x43a1ec
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x169c], 0
jmp 0x43a24a
mov ecx, dword [ebp - 0x169c]
add ecx, 1
mov dword [ebp - 0x169c], ecx
cmp dword [ebp - 0x169c], 1
jge 0x43a261
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x169c]
mov dword [ebp - 0x1c], edx
jmp 0x43a23b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x43a273
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 0x43a28b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16a0], 0
jmp 0x43a2a6
mov edx, dword [ebp - 0x16a0]
add edx, 1
mov dword [ebp - 0x16a0], edx
cmp dword [ebp - 0x16a0], 5
jge 0x43a2e7
cmp dword [ebp - 0x1c], 0
jge 0x43a2bd
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
je 0x43a2d3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1898]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x43a297
mov eax, 1
test eax, eax
je 0x43a321
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x189c], eax
mov eax, dword [ebp - 0x189c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x43a313
jmp 0x43a321
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x189c]
mov dword [ebp - 0x1c], edx
jmp 0x43a2e7
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18a0], 0
jmp 0x43a345
mov ecx, dword [ebp - 0x18a0]
add ecx, 1
mov dword [ebp - 0x18a0], ecx
cmp dword [ebp - 0x18a0], 4
jge 0x43a386
cmp dword [ebp - 0x1c], 0
jge 0x43a35c
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
je 0x43a372
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x43a336
mov dword [ebp - 4], 7
mov dword [ebp - 0x1a9c], 0xffffffff
mov dword [ebp - 0x1aa0], 0
jmp 0x43a3b2
mov eax, dword [ebp - 0x1aa0]
add eax, 1
mov dword [ebp - 0x1aa0], eax
cmp dword [ebp - 0x1aa0], 3
jge 0x43a3e4
mov eax, dword [ebp - 0x1aa0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43a3d9
mov edx, dword [ebp - 0x1a9c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x43a3a3
mov dword [ebp - 4], 0xfffffffe
jmp 0x43a404
mov dword [ebp - 0x1aa4], 0
jmp 0x43a41f
mov edx, dword [ebp - 0x1aa4]
add edx, 1
mov dword [ebp - 0x1aa4], edx
cmp dword [ebp - 0x1aa4], 4
jge 0x43a460
cmp dword [ebp - 0x1c], 0
jge 0x43a436
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
je 0x43a44c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ca0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x43a410
mov dword [ebp - 0x1ca4], 0
jmp 0x43a47b
mov eax, dword [ebp - 0x1ca4]
add eax, 1
mov dword [ebp - 0x1ca4], eax
cmp dword [ebp - 0x1ca4], 1
jge 0x43a4c8
cmp dword [ebp - 0x1c], 0
jge 0x43a492
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 0x43a4a8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1ca8], 0xfa
lea edx, [ebp - 0x1ca8]
push edx
lea eax, [ebp - 0x1ea0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x43a46c
mov dword [ebp - 4], 8
mov dword [ebp - 0x1ea4], 0xffffffff
mov dword [ebp - 0x1ea8], 0
jmp 0x43a4f4
mov ecx, dword [ebp - 0x1ea8]
add ecx, 1
mov dword [ebp - 0x1ea8], ecx
cmp dword [ebp - 0x1ea8], 6
jge 0x43a526
mov eax, dword [ebp - 0x1ea8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43a51b
mov edx, dword [ebp - 0x1ea4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x43a4e5
mov dword [ebp - 4], 0xfffffffe
jmp 0x43a546
mov dword [ebp - 0x1eac], 0
jmp 0x43a561
mov edx, dword [ebp - 0x1eac]
add edx, 1
mov dword [ebp - 0x1eac], edx
cmp dword [ebp - 0x1eac], 1
jge 0x43a5ae
mov eax, dword [ebp - 0x1eac]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43a590
mov eax, dword [ebp - 0x1eac]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43a5a0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1eac]
mov dword [ebp - 0x1c], edx
jmp 0x43a5ac
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1eac]
mov dword [ebp - 0x1c], eax
jmp 0x43a552
mov ecx, 1
test ecx, ecx
je 0x43a5e8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1eb0], eax
mov eax, dword [ebp - 0x1eb0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x43a5da
jmp 0x43a5e8
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1eb0]
mov dword [ebp - 0x1c], edx
jmp 0x43a5ae
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1eb4], 0
jmp 0x43a609
mov ecx, dword [ebp - 0x1eb4]
add ecx, 1
mov dword [ebp - 0x1eb4], ecx
cmp dword [ebp - 0x1eb4], 4
jge 0x43a656
cmp dword [ebp - 0x1c], 0
jge 0x43a620
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 0x43a636
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1eb8], 0xfa
lea edx, [ebp - 0x1eb8]
push edx
lea eax, [ebp - 0x20b0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x43a5fa
mov dword [ebp - 0x20b4], 0
jmp 0x43a671
mov ecx, dword [ebp - 0x20b4]
add ecx, 1
mov dword [ebp - 0x20b4], ecx
cmp dword [ebp - 0x20b4], 1
jge 0x43a688
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x20b4]
mov dword [ebp - 0x1c], edx
jmp 0x43a662
cmp dword [ebp - 0x1c], 0
jge 0x43a696
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 0x43a6ae
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20b8], 0
jmp 0x43a6c9
cmp dword [ebp - 0x20b8], 1
jge 0x43a716
mov eax, dword [ebp - 0x20b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43a6f8
mov eax, dword [ebp - 0x20b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43a708
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20b8]
mov dword [ebp - 0x1c], edx
jmp 0x43a714
mov dword [ebp - 0x20bc], 0
jmp 0x43a731
cmp dword [ebp - 0x20bc], 1
jge 0x43a77e