Function at 0x402406
Capabilities:
Check for time delay via gettickcount
Check os version
Get common file path

Disassembly:
push 0x278
push 0x4a14b8
call fcn.0045cba0
xor esi, esi
mov dword [ebp - 0x214], esi
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0x1c
jl 0x40241f
test esi, esi
jns 0x40243a
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x402454
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0x3c
jl 0x402456
test esi, esi
jns 0x402471
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x40248b
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0x27
jl 0x40248d
test esi, esi
jns 0x4024a8
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x4024c2
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
and dword [ebp - 4], 0
push 7
pop ecx
mov dword [ebp - 0x268], ecx
and dword [ebp - 0x250], 0
cmp dword [ebp - 0x250], 0x13
jge 0x40252f
mov eax, dword [ebp - 0x250]
cdq
mov edi, ecx
idiv edi
test edx, edx
jne 0x4024f4
dec dword [ebp - 0x268]
mov eax, esi
cdq
idiv dword [ebp - 0x268]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x250]
jmp 0x4024d6
push 0xfffffffffffffffe
pop ebx
mov dword [ebp - 4], ebx
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x40254d
cmp edx, 4
je 0x40254d
and esi, ecx
jmp 0x40254f
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 8
jl 0x402537
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x402585
cmp edx, 4
je 0x402585
and esi, ecx
jmp 0x402587
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 3
jl 0x40256f
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor edi, edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x4035fc
add esi, 0x12
mov dword [ebp - 0x214], esi
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0xe
jl 0x4025c7
mov edi, 0xffff0001
cmp esi, edi
jge 0x4025e7
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402601
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0xf
jl 0x402603
cmp esi, edi
jge 0x40261e
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop edi
mov ecx, edi
idiv ecx
test edx, edx
je 0x40263a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 3
jl 0x40263c
test esi, esi
jns 0x402657
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x402671
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
mov dword [ebp - 4], 1
mov dword [ebp - 0x288], edi
and dword [ebp - 0x260], 0
cmp dword [ebp - 0x260], 0xd
jge 0x4026e1
mov eax, dword [ebp - 0x260]
cdq
mov ecx, edi
idiv ecx
test edx, edx
jne 0x4026a3
dec dword [ebp - 0x288]
mov eax, esi
cdq
idiv dword [ebp - 0x288]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x260]
jmp 0x402685
mov dword [ebp - 4], ebx
mov dword [ebp - 4], 2
and dword [ebp - 0x240], 0
cmp dword [ebp - 0x240], 1
jge 0x402723
mov eax, dword [ebp - 0x240]
cdq
push 3
pop ecx
idiv ecx
cmp edx, 1
jne 0x402714
mov eax, ebx
nop
mov ecx, edx
nop
jmp 0x40271b
inc esi
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x240]
jmp 0x4026f2
mov dword [ebp - 4], ebx
call fcn.00402777
mov dword [ebp - 0x214], esi
cmp esi, 0xffff0001
jge 0x402742
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x40275c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x402783
cmp edx, 4
je 0x402783
and esi, ecx
jmp 0x402785
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 2
jl 0x40275e
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 0xe
jl 0x4027a5
test esi, esi
jns 0x4027c0
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x4027da
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 7
jl 0x4027dc
cmp esi, 0xffff0001
jge 0x4027fb
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402815
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x40282d
cmp edx, 4
je 0x40282d
and esi, ecx
jmp 0x40282f
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 0xe
jl 0x402817
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor eax, eax
and esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 4
jl 0x40284f
test esi, esi
jns 0x40286a
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x402884
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp - 0x214], esi
cmp esi, 0xffff0001
jge 0x402895
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop edi
mov ecx, edi
idiv ecx
test edx, edx
je 0x4028b1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
mov dword [ebp - 4], 3
mov dword [ebp - 0x27c], edi
and dword [ebp - 0x224], 0
cmp dword [ebp - 0x224], 6
jge 0x402921
mov eax, dword [ebp - 0x224]
cdq
mov ecx, edi
idiv ecx
test edx, edx
jne 0x4028e3
dec dword [ebp - 0x27c]
mov eax, esi
cdq
idiv dword [ebp - 0x27c]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x224]
jmp 0x4028c5
mov dword [ebp - 4], ebx
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 8
jl 0x402926
cmp esi, 0xffff0001
jge 0x402945
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x40295f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x402977
cmp edx, 4
je 0x402977
and esi, ecx
jmp 0x402979
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 3
jl 0x402961
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], 4
and dword [ebp - 0x244], 0
cmp dword [ebp - 0x244], 6
jge 0x4029d6
mov eax, dword [ebp - 0x244]
cdq
push 3
pop ecx
idiv ecx
cmp edx, 1
jne 0x4029c7
mov eax, ebx
nop
mov ecx, edx
nop
jmp 0x4029ce
inc esi
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x244]
jmp 0x4029a5
mov dword [ebp - 4], ebx
call fcn.00402a75
xor eax, eax
sub dword [ebp - 0x214], eax
inc eax
cmp eax, 4
jl 0x4029e0
cmp dword [ebp - 0x214], 0xffff0001
jge 0x402a07
mov eax, dword [ebp - 0x214]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 7
pop esi
mov ecx, esi
idiv ecx
test edx, edx
je 0x402a25
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x214], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x274], esi
and dword [ebp - 0x22c], 0
cmp dword [ebp - 0x22c], 6
jge 0x402aa3
mov eax, dword [ebp - 0x22c]
cdq
mov ecx, esi
idiv ecx
test edx, edx
jne 0x402a57
dec dword [ebp - 0x274]
mov eax, dword [ebp - 0x214]
cdq
idiv dword [ebp - 0x274]
mov dword [ebp - 0x214], eax
inc dword [ebp - 0x22c]
jmp 0x402a39
mov dword [ebp - 4], ebx
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor esi, esi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x4035e7
add dword [ebp - 0x214], 6
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop esi
idiv esi
cmp edx, 1
je 0x402af4
cmp edx, 4
je 0x402af4
and dword [ebp - 0x214], ecx
jmp 0x402afa
sub dword [ebp - 0x214], ecx
inc ecx
cmp ecx, 8
jl 0x402ada
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
cmp dword [ebp - 0x214], 0xffff0001
jge 0x402b2d
mov eax, dword [ebp - 0x214]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402b49
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x214], eax
xor esi, esi
call edi
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x4035d2
add dword [ebp - 0x214], 2
xor eax, eax
sub dword [ebp - 0x214], eax
inc eax
cmp eax, 5
jl 0x402b65
cmp dword [ebp - 0x214], 0xffff0001
jge 0x402b8c
mov eax, dword [ebp - 0x214]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402ba8
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x214], eax
xor esi, esi
call edi
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x4035bd
inc dword [ebp - 0x214]
mov dword [ebp - 4], 6
and dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 1
jge 0x402bfe
mov eax, dword [ebp - 0x24c]
cdq
push 3
pop ecx
idiv ecx
cmp edx, 1
jne 0x402bf0
mov eax, ebx
nop
mov ecx, edx
nop
jmp 0x402bf6
inc dword [ebp - 0x214]
inc dword [ebp - 0x24c]
jmp 0x402bce
mov dword [ebp - 4], ebx
call fcn.00402c2b
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop esi
idiv esi
cmp edx, 1
je 0x402c36
cmp edx, 4
je 0x402c36
and dword [ebp - 0x214], ecx
jmp 0x402c3c
sub dword [ebp - 0x214], ecx
inc ecx
cmp ecx, 2
jl 0x402c08
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor esi, esi
call edi
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x4035a8
add dword [ebp - 0x214], 2
mov dword [ebp - 4], 7
and dword [ebp - 0x234], edx
cmp dword [ebp - 0x234], 1
jge 0x402cb1
mov eax, dword [ebp - 0x234]
and eax, reloc.WS2_32.dll_accept
jns 0x402c96
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x402ca3
inc dword [ebp - 0x214]
jmp 0x402ca9
dec dword [ebp - 0x214]
inc dword [ebp - 0x234]
jmp 0x402c7b
mov dword [ebp - 4], ebx
call fcn.00402cd8
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop esi
idiv esi
cmp edx, 1
je 0x402cf3
cmp edx, 4
je 0x402cf3
and dword [ebp - 0x214], ecx
jmp 0x402cf9
sub dword [ebp - 0x214], ecx
inc ecx
cmp ecx, 4
jl 0x402cbb
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], 8
and dword [ebp - 0x254], 0
cmp dword [ebp - 0x254], 2
jge 0x402d55
mov eax, dword [ebp - 0x254]
and eax, reloc.WS2_32.dll_accept
jns 0x402d3a
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x402d47
inc dword [ebp - 0x214]
jmp 0x402d4d
dec dword [ebp - 0x214]
inc dword [ebp - 0x254]
jmp 0x402d1f
mov dword [ebp - 4], ebx
call fcn.00402d96
mov dword [ebp - 4], 9
and dword [ebp - 0x23c], 0
cmp dword [ebp - 0x23c], 2
jge 0x402dbf
mov eax, dword [ebp - 0x23c]
and eax, reloc.WS2_32.dll_accept
jns 0x402d86
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x402db1
inc dword [ebp - 0x214]
jmp 0x402db7
dec dword [ebp - 0x214]
inc dword [ebp - 0x23c]
jmp 0x402d6b
mov dword [ebp - 4], ebx
call fcn.00402e42
xor eax, eax
and dword [ebp - 0x214], eax
inc eax
cmp eax, 3
jl 0x402dc9
cmp dword [ebp - 0x214], 0
jge 0x402ded
mov eax, dword [ebp - 0x214]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x402e09
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x214], eax
mov dword [ebp - 4], 0xa
and dword [ebp - 0x25c], 0
cmp dword [ebp - 0x25c], 4
jge 0x402e6b
mov eax, dword [ebp - 0x25c]
and eax, reloc.WS2_32.dll_accept
jns 0x402e32
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x402e5d
inc dword [ebp - 0x214]
jmp 0x402e63
dec dword [ebp - 0x214]
inc dword [ebp - 0x25c]
jmp 0x402e17
mov dword [ebp - 4], ebx
call fcn.00402f53
mov esi, dword [ebp - 0x214]
mov dword [ebp - 0x214], esi
cmp esi, 0xffff0001
jge 0x402e90
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402eaa
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor edi, edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x403599
inc esi
mov dword [ebp - 0x214], esi
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 3
jl 0x402eca
cmp esi, 0xffff0001
jge 0x402ee9
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop edi
mov ecx, edi
idiv ecx
test edx, edx
je 0x402f05
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x284], edi
and dword [ebp - 0x264], 0
cmp dword [ebp - 0x264], 4
jge 0x402f93
mov eax, dword [ebp - 0x264]
cdq
mov ecx, edi
idiv ecx
test edx, edx
jne 0x402f37
dec dword [ebp - 0x284]
mov eax, esi
cdq
idiv dword [ebp - 0x284]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x264]
jmp 0x402f19
mov dword [ebp - 4], ebx
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 3
jl 0x402f98
cmp esi, 0xffff0001
jge 0x402fb7
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x402fd1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
mov dword [ebp - 4], 0xc
and dword [ebp - 0x248], 0
cmp dword [ebp - 0x248], 3
jge 0x403011
mov eax, dword [ebp - 0x248]
and eax, reloc.WS2_32.dll_accept
jns 0x402ffa
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x403002
inc esi
jmp 0x403003
dec esi
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x248]
jmp 0x402fdf
mov dword [ebp - 4], ebx
call fcn.0040308d
mov edi, esi
mov dword [ebp - 0x214], edi
cmp edi, 0xffff0001
jge 0x403032
imul edi, edi, 0xfffffffb
mov dword [ebp - 0x214], edi
mov eax, edi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x40304c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov edi, eax
mov dword [ebp - 0x214], edi
xor esi, esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
push 3
pop ecx
div ecx
test edx, edx
jne 0x40358a
add edi, 2
mov dword [ebp - 0x214], edi
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop esi
idiv esi
cmp edx, 1
je 0x4030a5
cmp edx, 4
je 0x4030a5
and edi, ecx
jmp 0x4030a7
sub edi, ecx
mov dword [ebp - 0x214], edi
inc ecx
cmp ecx, 3
jl 0x40306e
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], 0xd
push 7
pop ecx
mov dword [ebp - 0x26c], ecx
and dword [ebp - 0x258], 0
cmp dword [ebp - 0x258], 3
jge 0x403138
mov eax, dword [ebp - 0x258]
cdq
mov esi, ecx
idiv esi
test edx, edx
jne 0x4030fa
dec dword [ebp - 0x26c]
mov eax, edi
cdq
idiv dword [ebp - 0x26c]
mov edi, eax
mov dword [ebp - 0x214], edi
inc dword [ebp - 0x258]
jmp 0x4030dc
mov dword [ebp - 4], ebx
mov dword [ebp - 4], 0xe
and dword [ebp - 0x218], 0
cmp dword [ebp - 0x218], 2
jge 0x40317b
mov eax, dword [ebp - 0x218]
and eax, reloc.WS2_32.dll_accept
jns 0x403164
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x40316c
inc edi
jmp 0x40316d
dec edi
mov dword [ebp - 0x214], edi
inc dword [ebp - 0x218]
jmp 0x403149
mov dword [ebp - 4], ebx
call fcn.004031b6
mov dword [ebp - 4], 0xf
and dword [ebp - 0x21c], 0
cmp dword [ebp - 0x21c], 3
jge 0x4031df
mov eax, dword [ebp - 0x21c]
cdq
push 3
pop ecx
idiv ecx
cmp edx, 1
jne 0x4031d1
mov eax, ebx
nop
mov ecx, edx
nop
jmp 0x4031d7
inc dword [ebp - 0x214]
inc dword [ebp - 0x21c]
jmp 0x403191
mov dword [ebp - 4], ebx
call fcn.0040323e
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x214], eax
cmp eax, 0xffff0001
jge 0x403203
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x40321f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x214], eax
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop esi
idiv esi
cmp edx, 1
je 0x403249
cmp edx, 4
je 0x403249
and dword [ebp - 0x214], ecx
jmp 0x40324f
sub dword [ebp - 0x214], ecx
inc ecx
cmp ecx, 3
jl 0x403221
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], 0x10
and dword [ebp - 0x220], 0
cmp dword [ebp - 0x220], 0
jge 0x4032a5
mov eax, dword [ebp - 0x220]
cdq
push 3
pop ecx
idiv ecx
cmp edx, 1
jne 0x403297
mov eax, ebx
nop
mov ecx, edx
nop
jmp 0x40329d
inc dword [ebp - 0x214]
inc dword [ebp - 0x220]
jmp 0x403275
mov dword [ebp - 4], ebx
call fcn.004032fe
mov dword [ebp - 4], 0x11
push 7
pop ecx
mov dword [ebp - 0x270], ecx
and dword [ebp - 0x228], 0
cmp dword [ebp - 0x228], 1
jge 0x40332f
mov eax, dword [ebp - 0x228]
cdq
mov edi, ecx
idiv edi
test edx, edx
jne 0x4032e2
dec dword [ebp - 0x270]
mov eax, esi
cdq
idiv dword [ebp - 0x270]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x228]
jmp 0x4032c4
mov dword [ebp - 4], ebx
mov dword [ebp - 4], 0x12
push 7
pop ecx
mov dword [ebp - 0x278], ecx
and dword [ebp - 0x230], 0
cmp dword [ebp - 0x230], 0
jge 0x4033a5
mov eax, dword [ebp - 0x230]
cdq
mov edi, ecx
idiv edi
test edx, edx
jne 0x403367
dec dword [ebp - 0x278]
mov eax, esi
cdq
idiv dword [ebp - 0x278]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x230]
jmp 0x403349
mov dword [ebp - 4], ebx
xor eax, eax
sub esi, eax
mov dword [ebp - 0x214], esi
inc eax
cmp eax, 4
jl 0x4033aa
cmp esi, 0xffff0001
jge 0x4033c9
imul esi, esi, 0xfffffffb
mov dword [ebp - 0x214], esi
mov eax, esi
cdq
push 7
pop ecx
idiv ecx
test edx, edx
je 0x4033e3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov esi, eax
mov dword [ebp - 0x214], esi
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x4033fb
cmp edx, 4
je 0x4033fb
and esi, ecx
jmp 0x4033fd
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 3
jl 0x4033e5
push 0xfa
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop edi
idiv edi
cmp edx, 1
je 0x403433
cmp edx, 4
je 0x403433
and esi, ecx
jmp 0x403435
sub esi, ecx
mov dword [ebp - 0x214], esi
inc ecx
cmp ecx, 4
jl 0x40341d
mov edi, 0xfa
push edi
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], 0x13
mov dword [ebp - 0x280], 7
and dword [ebp - 0x238], 0
cmp dword [ebp - 0x238], 2
jge 0x4034a4
mov eax, dword [ebp - 0x238]
cdq
push 7
pop ecx
idiv ecx
test edx, edx
jne 0x40348b
dec dword [ebp - 0x280]
mov eax, esi
cdq
idiv dword [ebp - 0x280]
mov esi, eax
mov dword [ebp - 0x214], esi
inc dword [ebp - 0x238]
jmp 0x40346c
mov dword [ebp - 4], ebx
jmp 0x4034d5
push edi
lea eax, [ebp - 0x210]
push eax
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
call esi
and dword [ebp - 0x214], 0
jge 0x4034fd
mov eax, dword [ebp - 0x214]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x214]
cdq
push 0xd
pop ecx
idiv ecx
test edx, edx
jne 0x403519
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x214], eax
xor ecx, ecx
mov eax, ecx
cdq
push 5
pop ebx
idiv ebx
cmp edx, 1
je 0x403535
cmp edx, 4
je 0x403535
and dword [ebp - 0x214], ecx
jmp 0x40353b
sub dword [ebp - 0x214], ecx
inc ecx
cmp ecx, 2
jl 0x40351b
push edi
lea eax, [ebp - 0x210]
push eax
call esi
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x214], ecx
cmp ecx, 0xffff0001
jge 0x403568
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x214], ecx
mov eax, ecx
cdq
push 7
pop esi
idiv esi
test edx, edx
je 0x403582
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov ecx, eax
mov dword [ebp - 0x214], ecx
mov eax, ecx
call fcn.0045cbe8
ret
imul edi, esi
mov dword [ebp - 0x214], edi
inc esi
jmp 0x40304e
imul esi, edi
mov dword [ebp - 0x214], esi
inc edi
jmp 0x402eac
mov eax, esi
imul eax, dword [ebp - 0x214]
mov dword [ebp - 0x214], eax
inc esi
jmp 0x402c56
mov eax, esi
imul eax, dword [ebp - 0x214]
mov dword [ebp - 0x214], eax
inc esi
jmp 0x402baa
mov eax, esi
imul eax, dword [ebp - 0x214]
mov dword [ebp - 0x214], eax
inc esi
jmp 0x402b4b
mov eax, esi
imul eax, dword [ebp - 0x214]
mov dword [ebp - 0x214], eax
inc esi
jmp 0x402ac0
imul esi, edi
mov dword [ebp - 0x214], esi
inc edi
jmp 0x4025a7