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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x511ce8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1f2c
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 0x4732b9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1d
jge 0x4732ca
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x4732b0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4732dc
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4732f4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x28], 0
jmp 0x473314
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 8
jge 0x47333d
mov eax, dword [ebp - 0x28]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x473332
mov edx, dword [ebp - 0x24]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47330b
mov dword [ebp - 4], 0xfffffffe
jmp 0x47335d
mov dword [ebp - 0x2c], 0
jmp 0x47336f
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0x17
jge 0x4733ad
mov eax, dword [ebp - 0x2c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473395
mov eax, dword [ebp - 0x2c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4733a2
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x4733ab
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
jmp 0x473366
mov dword [ebp - 0x30], 0
jmp 0x4733bf
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], 5
jge 0x4733d0
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x4733b6
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4733e2
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 0x4733fa
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0
jmp 0x47340c
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0xd
jge 0x47344a
mov eax, dword [ebp - 0x34]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473432
mov eax, dword [ebp - 0x34]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47343f
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
jmp 0x473448
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
jmp 0x473403
mov dword [ebp - 0x38], 0
jmp 0x47345c
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x38], 0x10
jge 0x47346d
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], edx
jmp 0x473453
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47347f
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 0x473497
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x3c], 0
jmp 0x4734a9
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 6
jge 0x4734e7
cmp dword [ebp - 0x1c], 0
jge 0x4734bd
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 0x4734d3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x238]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4734a0
mov dword [ebp - 0x23c], 0
jmp 0x473502
mov eax, dword [ebp - 0x23c]
add eax, 1
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0xb
jge 0x47354f
cmp dword [ebp - 0x1c], 0
jge 0x473519
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 0x47352f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x240], 0xfa
lea edx, [ebp - 0x240]
push edx
lea eax, [ebp - 0x438]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4734f3
mov dword [ebp - 0x43c], 0
jmp 0x47356a
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
cmp dword [ebp - 0x43c], 6
jge 0x4735b7
cmp dword [ebp - 0x1c], 0
jge 0x473581
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 0x473597
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x440], 0xfa
lea edx, [ebp - 0x440]
push edx
lea eax, [ebp - 0x638]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47355b
mov dword [ebp - 0x63c], 0
jmp 0x4735d2
mov ecx, dword [ebp - 0x63c]
add ecx, 1
mov dword [ebp - 0x63c], ecx
cmp dword [ebp - 0x63c], 9
jge 0x4735e9
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x63c]
mov dword [ebp - 0x1c], edx
jmp 0x4735c3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4735fb
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 0x473613
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x640], 0
jmp 0x47362e
mov edx, dword [ebp - 0x640]
add edx, 1
mov dword [ebp - 0x640], edx
cmp dword [ebp - 0x640], 1
jge 0x473645
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x640]
mov dword [ebp - 0x1c], eax
jmp 0x47361f
cmp dword [ebp - 0x1c], 0
jge 0x473653
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 0x47366b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x644], 0
jmp 0x473686
mov edx, dword [ebp - 0x644]
add edx, 1
mov dword [ebp - 0x644], edx
cmp dword [ebp - 0x644], 0xb
jge 0x4736d3
cmp dword [ebp - 0x1c], 0
jge 0x47369d
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 0x4736b3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x648], 0xfa
lea edx, [ebp - 0x648]
push edx
lea eax, [ebp - 0x840]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x473677
mov dword [ebp - 0x844], 0
jmp 0x4736ee
mov ecx, dword [ebp - 0x844]
add ecx, 1
mov dword [ebp - 0x844], ecx
cmp dword [ebp - 0x844], 4
jge 0x473705
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x844]
mov dword [ebp - 0x1c], edx
jmp 0x4736df
cmp dword [ebp - 0x1c], 0
jge 0x473713
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 0x47372b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x848], 0
jmp 0x473746
mov edx, dword [ebp - 0x848]
add edx, 1
mov dword [ebp - 0x848], edx
cmp dword [ebp - 0x848], 0xf
jge 0x47375d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x848]
mov dword [ebp - 0x1c], eax
jmp 0x473737
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47376f
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 0x473787
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x84c], 0
jmp 0x4737a2
mov edx, dword [ebp - 0x84c]
add edx, 1
mov dword [ebp - 0x84c], edx
cmp dword [ebp - 0x84c], 7
jge 0x4737ef
mov eax, dword [ebp - 0x84c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4737d1
mov eax, dword [ebp - 0x84c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4737e1
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], edx
jmp 0x4737ed
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], eax
jmp 0x473793
mov dword [ebp - 0x850], 0
jmp 0x47380a
mov ecx, dword [ebp - 0x850]
add ecx, 1
mov dword [ebp - 0x850], ecx
cmp dword [ebp - 0x850], 0xe
jge 0x473857
cmp dword [ebp - 0x1c], 0
jge 0x473821
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 0x473837
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x854], 0xfa
lea edx, [ebp - 0x854]
push edx
lea eax, [ebp - 0xa50]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4737fb
mov dword [ebp - 0xa54], 0
jmp 0x473872
mov ecx, dword [ebp - 0xa54]
add ecx, 1
mov dword [ebp - 0xa54], ecx
cmp dword [ebp - 0xa54], 3
jge 0x473889
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa54]
mov dword [ebp - 0x1c], edx
jmp 0x473863
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47389b
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 0x4738b3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0xa58], 0xffffffff
mov dword [ebp - 0xa5c], 0
jmp 0x4738df
mov edx, dword [ebp - 0xa5c]
add edx, 1
mov dword [ebp - 0xa5c], edx
cmp dword [ebp - 0xa5c], 8
jge 0x473911
mov eax, dword [ebp - 0xa5c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x473906
mov edx, dword [ebp - 0xa58]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4738d0
mov dword [ebp - 4], 0xfffffffe
jmp 0x473931
mov dword [ebp - 0xa60], 0
jmp 0x47394c
mov edx, dword [ebp - 0xa60]
add edx, 1
mov dword [ebp - 0xa60], edx
cmp dword [ebp - 0xa60], 7
jge 0x473999
cmp dword [ebp - 0x1c], 0
jge 0x473963
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 0x473979
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa64], 0xfa
lea edx, [ebp - 0xa64]
push edx
lea eax, [ebp - 0xc60]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47393d
mov dword [ebp - 4], 2
mov dword [ebp - 0xc64], 0xffffffff
mov dword [ebp - 0xc68], 0
jmp 0x4739c5
mov ecx, dword [ebp - 0xc68]
add ecx, 1
mov dword [ebp - 0xc68], ecx
cmp dword [ebp - 0xc68], 4
jge 0x4739f7
mov eax, dword [ebp - 0xc68]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4739ec
mov edx, dword [ebp - 0xc64]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4739b6
mov dword [ebp - 4], 0xfffffffe
jmp 0x473a17
mov dword [ebp - 0xc6c], 0
jmp 0x473a32
mov edx, dword [ebp - 0xc6c]
add edx, 1
mov dword [ebp - 0xc6c], edx
cmp dword [ebp - 0xc6c], 0
jge 0x473a49
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], eax
jmp 0x473a23
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x473a5b
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 0x473a73
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0xc70], 0xffffffff
mov dword [ebp - 0xc74], 0
jmp 0x473a9f
mov edx, dword [ebp - 0xc74]
add edx, 1
mov dword [ebp - 0xc74], edx
cmp dword [ebp - 0xc74], 2
jge 0x473ad1
mov eax, dword [ebp - 0xc74]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x473ac6
mov edx, dword [ebp - 0xc70]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x473a90
mov dword [ebp - 4], 0xfffffffe
jmp 0x473af1
mov dword [ebp - 0xc78], 0
jmp 0x473b0c
mov edx, dword [ebp - 0xc78]
add edx, 1
mov dword [ebp - 0xc78], edx
cmp dword [ebp - 0xc78], 1
jge 0x473b59
mov eax, dword [ebp - 0xc78]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473b3b
mov eax, dword [ebp - 0xc78]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473b4b
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc78]
mov dword [ebp - 0x1c], edx
jmp 0x473b57
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc78]
mov dword [ebp - 0x1c], eax
jmp 0x473afd
mov dword [ebp - 4], 4
mov dword [ebp - 0xc7c], 0xffffffff
mov dword [ebp - 0xc80], 0
jmp 0x473b85
mov ecx, dword [ebp - 0xc80]
add ecx, 1
mov dword [ebp - 0xc80], ecx
cmp dword [ebp - 0xc80], 1
jge 0x473bb7
mov eax, dword [ebp - 0xc80]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x473bac
mov edx, dword [ebp - 0xc7c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x473b76
mov dword [ebp - 4], 0xfffffffe
jmp 0x473bd7
mov dword [ebp - 0xc84], 0
jmp 0x473bf2
mov edx, dword [ebp - 0xc84]
add edx, 1
mov dword [ebp - 0xc84], edx
cmp dword [ebp - 0xc84], 4
jge 0x473c3f
mov eax, dword [ebp - 0xc84]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473c21
mov eax, dword [ebp - 0xc84]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473c31
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc84]
mov dword [ebp - 0x1c], edx
jmp 0x473c3d
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc84]
mov dword [ebp - 0x1c], eax
jmp 0x473be3
mov dword [ebp - 0xc88], 0
jmp 0x473c5a
mov ecx, dword [ebp - 0xc88]
add ecx, 1
mov dword [ebp - 0xc88], ecx
cmp dword [ebp - 0xc88], 2
jge 0x473ca7
mov eax, dword [ebp - 0xc88]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473c89
mov eax, dword [ebp - 0xc88]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473c99
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc88]
mov dword [ebp - 0x1c], edx
jmp 0x473ca5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc88]
mov dword [ebp - 0x1c], eax
jmp 0x473c4b
mov dword [ebp - 0xc8c], 0
jmp 0x473cc2
mov ecx, dword [ebp - 0xc8c]
add ecx, 1
mov dword [ebp - 0xc8c], ecx
cmp dword [ebp - 0xc8c], 2
jge 0x473d0f
mov eax, dword [ebp - 0xc8c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473cf1
mov eax, dword [ebp - 0xc8c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473d01
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x1c], edx
jmp 0x473d0d
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc8c]
mov dword [ebp - 0x1c], eax
jmp 0x473cb3
mov ecx, 1
test ecx, ecx
je 0x473d49
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc90], eax
mov eax, dword [ebp - 0xc90]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x473d3b
jmp 0x473d49
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc90]
mov dword [ebp - 0x1c], edx
jmp 0x473d0f
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x473d8c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc94], eax
mov eax, dword [ebp - 0xc94]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x473d7e
jmp 0x473d8c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc94]
mov dword [ebp - 0x1c], edx
jmp 0x473d52
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc98], 0
jmp 0x473db0
mov ecx, dword [ebp - 0xc98]
add ecx, 1
mov dword [ebp - 0xc98], ecx
cmp dword [ebp - 0xc98], 3
jge 0x473dc7
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc98]
mov dword [ebp - 0x1c], edx
jmp 0x473da1
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x473dd9
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 0x473df1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc9c], 0
jmp 0x473e0c
mov edx, dword [ebp - 0xc9c]
add edx, 1
mov dword [ebp - 0xc9c], edx
cmp dword [ebp - 0xc9c], 0
jge 0x473e23
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xc9c]
mov dword [ebp - 0x1c], eax
jmp 0x473dfd
cmp dword [ebp - 0x1c], 0
jge 0x473e31
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 0x473e49
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xca0], 0
jmp 0x473e64
mov edx, dword [ebp - 0xca0]
add edx, 1
mov dword [ebp - 0xca0], edx
cmp dword [ebp - 0xca0], 0
jge 0x473eb1
mov eax, dword [ebp - 0xca0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473e93
mov eax, dword [ebp - 0xca0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473ea3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xca0]
mov dword [ebp - 0x1c], edx
jmp 0x473eaf
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xca0]
mov dword [ebp - 0x1c], eax
jmp 0x473e55
mov dword [ebp - 0xca4], 0
jmp 0x473ecc
mov ecx, dword [ebp - 0xca4]
add ecx, 1
mov dword [ebp - 0xca4], ecx
cmp dword [ebp - 0xca4], 3
jge 0x473ee3
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xca4]
mov dword [ebp - 0x1c], edx
jmp 0x473ebd
cmp dword [ebp - 0x1c], 0
jge 0x473ef1
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 0x473f09
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0xca8], 0xffffffff
mov dword [ebp - 0xcac], 0
jmp 0x473f35
mov edx, dword [ebp - 0xcac]
add edx, 1
mov dword [ebp - 0xcac], edx
cmp dword [ebp - 0xcac], 2
jge 0x473f67
mov eax, dword [ebp - 0xcac]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x473f5c
mov edx, dword [ebp - 0xca8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x473f26
mov dword [ebp - 4], 0xfffffffe
jmp 0x473f87
mov dword [ebp - 0xcb0], 0
jmp 0x473fa2
mov edx, dword [ebp - 0xcb0]
add edx, 1
mov dword [ebp - 0xcb0], edx
cmp dword [ebp - 0xcb0], 2
jge 0x473fef
mov eax, dword [ebp - 0xcb0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x473fd1
mov eax, dword [ebp - 0xcb0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x473fe1
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcb0]
mov dword [ebp - 0x1c], edx
jmp 0x473fed
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xcb0]
mov dword [ebp - 0x1c], eax
jmp 0x473f93
mov dword [ebp - 0xcb4], 0
jmp 0x47400a
mov ecx, dword [ebp - 0xcb4]
add ecx, 1
mov dword [ebp - 0xcb4], ecx
cmp dword [ebp - 0xcb4], 2
jge 0x474021
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcb4]
mov dword [ebp - 0x1c], edx
jmp 0x473ffb
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x474033
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 0x47404b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcb8], 0
jmp 0x474066
mov edx, dword [ebp - 0xcb8]
add edx, 1
mov dword [ebp - 0xcb8], edx
cmp dword [ebp - 0xcb8], 3
jge 0x4740b3
mov eax, dword [ebp - 0xcb8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x474095
mov eax, dword [ebp - 0xcb8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4740a5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcb8]
mov dword [ebp - 0x1c], edx
jmp 0x4740b1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xcb8]
mov dword [ebp - 0x1c], eax
jmp 0x474057
mov dword [ebp - 0xcbc], 0
jmp 0x4740ce
mov ecx, dword [ebp - 0xcbc]
add ecx, 1
mov dword [ebp - 0xcbc], ecx
cmp dword [ebp - 0xcbc], 4
jge 0x47411b
mov eax, dword [ebp - 0xcbc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4740fd
mov eax, dword [ebp - 0xcbc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47410d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcbc]
mov dword [ebp - 0x1c], edx
jmp 0x474119
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xcbc]
mov dword [ebp - 0x1c], eax
jmp 0x4740bf
mov dword [ebp - 4], 6
mov dword [ebp - 0xcc0], 0xffffffff
mov dword [ebp - 0xcc4], 0
jmp 0x474147
mov ecx, dword [ebp - 0xcc4]
add ecx, 1
mov dword [ebp - 0xcc4], ecx
cmp dword [ebp - 0xcc4], 2
jge 0x474179
mov eax, dword [ebp - 0xcc4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47416e
mov edx, dword [ebp - 0xcc0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x474138
mov dword [ebp - 4], 0xfffffffe
jmp 0x474199
mov dword [ebp - 0xcc8], 0
jmp 0x4741b4
mov edx, dword [ebp - 0xcc8]
add edx, 1
mov dword [ebp - 0xcc8], edx
cmp dword [ebp - 0xcc8], 4
jge 0x4741cb
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xcc8]
mov dword [ebp - 0x1c], eax
jmp 0x4741a5
cmp dword [ebp - 0x1c], 0
jge 0x4741d9
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 0x4741f1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xccc], 0
jmp 0x47420c
mov edx, dword [ebp - 0xccc]
add edx, 1
mov dword [ebp - 0xccc], edx
cmp dword [ebp - 0xccc], 2
jge 0x474223
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xccc]
mov dword [ebp - 0x1c], eax
jmp 0x4741fd
cmp dword [ebp - 0x1c], 0
jge 0x474231
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 0x474249
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcd0], 0
jmp 0x474264
mov edx, dword [ebp - 0xcd0]
add edx, 1
mov dword [ebp - 0xcd0], edx
cmp dword [ebp - 0xcd0], 1
jge 0x47427b
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xcd0]
mov dword [ebp - 0x1c], eax
jmp 0x474255
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47428d
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 0x4742a5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcd4], 0
jmp 0x4742c0
mov edx, dword [ebp - 0xcd4]
add edx, 1
mov dword [ebp - 0xcd4], edx
cmp dword [ebp - 0xcd4], 4
jge 0x47430d
mov eax, dword [ebp - 0xcd4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4742ef
mov eax, dword [ebp - 0xcd4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4742ff
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcd4]
mov dword [ebp - 0x1c], edx
jmp 0x47430b
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xcd4]
mov dword [ebp - 0x1c], eax
jmp 0x4742b1
mov dword [ebp - 0xcd8], 0
jmp 0x474328
mov ecx, dword [ebp - 0xcd8]
add ecx, 1
mov dword [ebp - 0xcd8], ecx
cmp dword [ebp - 0xcd8], 3
jge 0x47433f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcd8]
mov dword [ebp - 0x1c], edx
jmp 0x474319
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x474351
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 0x474369
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0xcdc], 0xffffffff
mov dword [ebp - 0xce0], 0
jmp 0x474395
cmp dword [ebp - 0xce0], 0
jge 0x4743c7