Function at 0x425be0
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
xor edx, edx
mov dword [ebp - 0xc4], edx
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xb4], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x426355
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov edx, 0x426364
mov eax, 0x48d8e4
call fcn.00409850
lea eax, [ebp - 0xb0]
xor ecx, ecx
mov edx, 0x94
call fcn.004031cc
mov dword [ebp - 0xb0], 0x94
lea eax, [ebp - 0xb0]
push eax
call sub.kernel32.dll_GetVersionExA
cmp dword [ebp - 0xa0], 2
jne 0x425cd4
mov eax, dword [0x48bfcc]
mov edx, 0x426370
call fcn.0040504c
call fcn.00402f1c
mov eax, dword [ebp - 4]
call fcn.004235cc
mov eax, dword [0x48bfcc]
mov edx, 0x4263c4
call fcn.0040504c
call fcn.00402f1c
mov eax, dword [ebp - 4]
call fcn.004250ac
mov eax, dword [0x48bfcc]
mov edx, 0x426408
call fcn.0040504c
call fcn.00402f1c
mov eax, dword [ebp - 4]
call fcn.004241d0
mov eax, dword [0x48bfcc]
mov edx, 0x426458
call fcn.0040504c
call fcn.00402f1c
mov eax, dword [ebp - 4]
call fcn.00423ab8
jmp 0x425cff
xor eax, eax
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x19], 0
jmp 0x425cea
mov eax, dword [ebp - 4]
call fcn.00424e10
mov byte [ebp - 0x19], al
cmp dword [ebp - 0x14], 0xa
jge 0x425cff
cmp byte [ebp - 0x19], 0
jne 0x425cff
cmp byte [0x48d8e4], 0
je 0x425cdf
cmp byte [0x48d8e4], 0
jbe 0x42619c
xor eax, eax
mov dword [ebp - 0x18], eax
mov edx, 0x426488
mov eax, 0x48d8e4
mov ecx, 4
call fcn.004098f4
test eax, eax
jne 0x426183
add dword [ebp - 0x18], 5
jmp 0x426183
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x48d8e4], 0x2d
jne 0x425d4a
inc dword [ebp - 0x18]
jmp 0x426183
push 0
push 0xa
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
call fcn.004058f0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x18]
movzx eax, byte [eax + 0x48d8e4]
add eax, 0xffffffd0
cmp eax, 0x4a
ja case.0x425d7b.48
mov al, byte [eax + 0x425d82]
jmp dword [eax*4 + 0x425dcd]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 1
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 2
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 3
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 4
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 5
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 6
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 7
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 8
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 9
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xa
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xb
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xc
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xd
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xe
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0xf
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x10
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x11
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x12
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x13
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x14
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x15
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x16
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x17
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x18
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x19
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1a
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1b
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1c
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1d
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1e
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1f
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x20
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x21
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x22
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp case.0x425d7b.48
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x23
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x48d8e4], 0
je 0x42619c
cmp dword [ebp - 0x18], 0x400
jl 0x425d36
push 0
push 0x5f5e100
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
call fcn.00405990
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
mov edx, 0x426490
mov eax, 0x48dce4
call fcn.00409974
test eax, eax
je 0x4261dd
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x11e1a300
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp 0x426256
mov edx, 0x426498
mov eax, 0x48dce4
call fcn.00409974
test eax, eax
jne 0x426203
mov edx, 0x4264a0
mov eax, 0x48dce4
call fcn.00409974
test eax, eax
je 0x426219
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x17d78400
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp 0x426256
mov edx, 0x4264a8
mov eax, 0x48dce4
call fcn.00409974
test eax, eax
je 0x426242
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x1dcd6500
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
jmp 0x426256
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
add eax, 0x23c34600
adc edx, 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
lea eax, [ebp - 0xb4]
push eax
mov dword [ebp - 0xbc], 0x48d8e4
mov byte [ebp - 0xb8], 6
lea edx, [ebp - 0xbc]
xor ecx, ecx
mov eax, 0x4264b8
call fcn.00409e5c
mov edx, dword [ebp - 0xb4]
mov eax, dword [0x48bfcc]
call fcn.0040504c
call fcn.00402f1c
lea eax, [ebp - 0xc0]
push eax
mov dword [ebp - 0xbc], 0x48dce4
mov byte [ebp - 0xb8], 6
lea edx, [ebp - 0xbc]
xor ecx, ecx
mov eax, 0x4264ec
call fcn.00409e5c
mov edx, dword [ebp - 0xc0]
mov eax, dword [0x48bfcc]
call fcn.0040504c
call fcn.00402f1c
lea eax, [ebp - 0xc4]
push eax
push dword [ebp - 0xc]
push dword [ebp - 0x10]
lea eax, [ebp - 0xc8]
call fcn.00408c78
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xbc], eax
mov byte [ebp - 0xb8], 0xb
lea edx, [ebp - 0xbc]
xor ecx, ecx
mov eax, 0x426520
call fcn.00409e5c
mov edx, dword [ebp - 0xc4]
mov eax, dword [0x48bfcc]
call fcn.0040504c
call fcn.00402f1c
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x42635c
lea eax, [ebp - 0xc8]
mov edx, 3
call fcn.00404a1c
lea eax, [ebp - 0xb4]
call fcn.004049f8
ret