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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5126b0
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1280
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x28], 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 0x4915f9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 8
jge 0x49160a
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x4915f0
cmp dword [ebp - 0x1c], 0
jge 0x491618
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 0x491630
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x491642
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0x1b
jge 0x491680
cmp dword [ebp - 0x1c], 0
jge 0x491656
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 0x49166c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x491639
mov dword [ebp - 0x224], 0
jmp 0x49169b
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xe
jge 0x4916e8
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4916ca
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4916da
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x4916e6
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x224]
mov dword [ebp - 0x1c], eax
jmp 0x49168c
mov dword [ebp - 0x228], 0
jmp 0x491703
mov ecx, dword [ebp - 0x228]
add ecx, 1
mov dword [ebp - 0x228], ecx
cmp dword [ebp - 0x228], 0x10
jge 0x491744
cmp dword [ebp - 0x1c], 0
jge 0x49171a
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 0x491730
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x420]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4916f4
mov dword [ebp - 4], 0
mov dword [ebp - 0x424], 0xffffffff
mov dword [ebp - 0x428], 0
jmp 0x491770
mov eax, dword [ebp - 0x428]
add eax, 1
mov dword [ebp - 0x428], eax
cmp dword [ebp - 0x428], 9
jge 0x4917a2
mov eax, dword [ebp - 0x428]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x491797
mov edx, dword [ebp - 0x424]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x491761
mov dword [ebp - 4], 0xfffffffe
jmp 0x4917c2
mov dword [ebp - 0x42c], 0
jmp 0x4917dd
mov edx, dword [ebp - 0x42c]
add edx, 1
mov dword [ebp - 0x42c], edx
cmp dword [ebp - 0x42c], 0x10
jge 0x49182a
cmp dword [ebp - 0x1c], 0
jge 0x4917f4
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 0x49180a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x430], 0xfa
lea edx, [ebp - 0x430]
push edx
lea eax, [ebp - 0x628]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4917ce
mov dword [ebp - 4], 1
mov dword [ebp - 0x62c], 0xffffffff
mov dword [ebp - 0x630], 0
jmp 0x491856
mov ecx, dword [ebp - 0x630]
add ecx, 1
mov dword [ebp - 0x630], ecx
cmp dword [ebp - 0x630], 6
jge 0x491888
mov eax, dword [ebp - 0x630]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x49187d
mov edx, dword [ebp - 0x62c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x491847
mov dword [ebp - 4], 0xfffffffe
jmp 0x4918a8
mov dword [ebp - 4], 2
mov dword [ebp - 0x634], 0xffffffff
mov dword [ebp - 0x638], 0
jmp 0x4918d4
mov edx, dword [ebp - 0x638]
add edx, 1
mov dword [ebp - 0x638], edx
cmp dword [ebp - 0x638], 0xd
jge 0x491906
mov eax, dword [ebp - 0x638]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4918fb
mov edx, dword [ebp - 0x634]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4918c5
mov dword [ebp - 4], 0xfffffffe
jmp 0x491926
mov dword [ebp - 0x63c], 0
jmp 0x491941
mov edx, dword [ebp - 0x63c]
add edx, 1
mov dword [ebp - 0x63c], edx
cmp dword [ebp - 0x63c], 2
jge 0x491982
cmp dword [ebp - 0x1c], 0
jge 0x491958
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 0x49196e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x838]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x491932
mov dword [ebp - 0x83c], 0
jmp 0x49199d
mov eax, dword [ebp - 0x83c]
add eax, 1
mov dword [ebp - 0x83c], eax
cmp dword [ebp - 0x83c], 0xe
jge 0x4919b4
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x83c]
mov dword [ebp - 0x1c], ecx
jmp 0x49198e
cmp dword [ebp - 0x1c], 0
jge 0x4919c2
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 0x4919da
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x840], 0
jmp 0x4919f5
mov edx, dword [ebp - 0x840]
add edx, 1
mov dword [ebp - 0x840], edx
cmp dword [ebp - 0x840], 2
jge 0x491a42
cmp dword [ebp - 0x1c], 0
jge 0x491a0c
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 0x491a22
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x844], 0xfa
lea edx, [ebp - 0x844]
push edx
lea eax, [ebp - 0xa40]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4919e6
mov dword [ebp - 0xa44], 0
jmp 0x491a5d
mov ecx, dword [ebp - 0xa44]
add ecx, 1
mov dword [ebp - 0xa44], ecx
cmp dword [ebp - 0xa44], 0xf
jge 0x491a74
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa44]
mov dword [ebp - 0x1c], edx
jmp 0x491a4e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x491a86
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 0x491a9e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa48], 0
jmp 0x491ab9
mov edx, dword [ebp - 0xa48]
add edx, 1
mov dword [ebp - 0xa48], edx
cmp dword [ebp - 0xa48], 0xf
jge 0x491ad0
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa48]
mov dword [ebp - 0x1c], eax
jmp 0x491aaa
cmp dword [ebp - 0x1c], 0
jge 0x491ade
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 0x491af6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa4c], 0
jmp 0x491b11
mov edx, dword [ebp - 0xa4c]
add edx, 1
mov dword [ebp - 0xa4c], edx
cmp dword [ebp - 0xa4c], 0xb
jge 0x491b5e
mov eax, dword [ebp - 0xa4c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x491b40
mov eax, dword [ebp - 0xa4c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x491b50
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa4c]
mov dword [ebp - 0x1c], edx
jmp 0x491b5c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa4c]
mov dword [ebp - 0x1c], eax
jmp 0x491b02
mov dword [ebp - 0xa50], 0
jmp 0x491b79
mov ecx, dword [ebp - 0xa50]
add ecx, 1
mov dword [ebp - 0xa50], ecx
cmp dword [ebp - 0xa50], 1
jge 0x491bc6
mov eax, dword [ebp - 0xa50]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x491ba8
mov eax, dword [ebp - 0xa50]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x491bb8
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa50]
mov dword [ebp - 0x1c], edx
jmp 0x491bc4
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa50]
mov dword [ebp - 0x1c], eax
jmp 0x491b6a
mov dword [ebp - 0xa54], 0
jmp 0x491be1
mov ecx, dword [ebp - 0xa54]
add ecx, 1
mov dword [ebp - 0xa54], ecx
cmp dword [ebp - 0xa54], 7
jge 0x491c22
cmp dword [ebp - 0x1c], 0
jge 0x491bf8
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 0x491c0e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc50]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x491bd2
mov dword [ebp - 4], 3
mov dword [ebp - 0xc54], 0xffffffff
mov dword [ebp - 0xc58], 0
jmp 0x491c4e
mov eax, dword [ebp - 0xc58]
add eax, 1
mov dword [ebp - 0xc58], eax
cmp dword [ebp - 0xc58], 3
jge 0x491c80
mov eax, dword [ebp - 0xc58]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x491c75
mov edx, dword [ebp - 0xc54]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x491c3f
mov dword [ebp - 4], 0xfffffffe
jmp 0x491ca0
mov dword [ebp - 0xc5c], 0
jmp 0x491cbb
mov edx, dword [ebp - 0xc5c]
add edx, 1
mov dword [ebp - 0xc5c], edx
cmp dword [ebp - 0xc5c], 8
jge 0x491cfc
cmp dword [ebp - 0x1c], 0
jge 0x491cd2
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 0x491ce8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe58]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x491cac
mov dword [ebp - 4], 4
mov dword [ebp - 0xe5c], 0xffffffff
mov dword [ebp - 0xe60], 0
jmp 0x491d28
mov eax, dword [ebp - 0xe60]
add eax, 1
mov dword [ebp - 0xe60], eax
cmp dword [ebp - 0xe60], 5
jge 0x491d5a
mov eax, dword [ebp - 0xe60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x491d4f
mov edx, dword [ebp - 0xe5c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x491d19
mov dword [ebp - 4], 0xfffffffe
jmp 0x491d7a
mov dword [ebp - 0xe64], 0
jmp 0x491d95
mov edx, dword [ebp - 0xe64]
add edx, 1
mov dword [ebp - 0xe64], edx
cmp dword [ebp - 0xe64], 6
jge 0x491dac
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xe64]
mov dword [ebp - 0x1c], eax
jmp 0x491d86
cmp dword [ebp - 0x1c], 0
jge 0x491dba
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 0x491dd2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe68], 0
jmp 0x491ded
mov edx, dword [ebp - 0xe68]
add edx, 1
mov dword [ebp - 0xe68], edx
cmp dword [ebp - 0xe68], 2
jge 0x491e3a
cmp dword [ebp - 0x1c], 0
jge 0x491e04
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 0x491e1a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe6c], 0xfa
lea edx, [ebp - 0xe6c]
push edx
lea eax, [ebp - 0x1068]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x491dde
mov dword [ebp - 0x106c], 0
jmp 0x491e55
mov ecx, dword [ebp - 0x106c]
add ecx, 1
mov dword [ebp - 0x106c], ecx
cmp dword [ebp - 0x106c], 0
jge 0x491e6c
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x106c]
mov dword [ebp - 0x1c], edx
jmp 0x491e46
cmp dword [ebp - 0x1c], 0
jge 0x491e7a
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 0x491e92
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1070], 0
jmp 0x491ead
mov edx, dword [ebp - 0x1070]
add edx, 1
mov dword [ebp - 0x1070], edx
cmp dword [ebp - 0x1070], 1
jge 0x491efa
mov eax, dword [ebp - 0x1070]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x491edc
mov eax, dword [ebp - 0x1070]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x491eec
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1070]
mov dword [ebp - 0x1c], edx
jmp 0x491ef8
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1070]
mov dword [ebp - 0x1c], eax
jmp 0x491e9e
mov dword [ebp - 0x1074], 0
jmp 0x491f15
mov ecx, dword [ebp - 0x1074]
add ecx, 1
mov dword [ebp - 0x1074], ecx
cmp dword [ebp - 0x1074], 4
jge 0x491f62
mov eax, dword [ebp - 0x1074]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x491f44
mov eax, dword [ebp - 0x1074]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x491f54
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1074]
mov dword [ebp - 0x1c], edx
jmp 0x491f60
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1074]
mov dword [ebp - 0x1c], eax
jmp 0x491f06
mov dword [ebp - 0x1078], 0
jmp 0x491f7d
mov ecx, dword [ebp - 0x1078]
add ecx, 1
mov dword [ebp - 0x1078], ecx
cmp dword [ebp - 0x1078], 3
jge 0x491fca
mov eax, dword [ebp - 0x1078]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x491fac
mov eax, dword [ebp - 0x1078]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x491fbc
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1078]
mov dword [ebp - 0x1c], edx
jmp 0x491fc8
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1078]
mov dword [ebp - 0x1c], eax
jmp 0x491f6e
mov dword [ebp - 0x107c], 0
jmp 0x491fe5
mov ecx, dword [ebp - 0x107c]
add ecx, 1
mov dword [ebp - 0x107c], ecx
cmp dword [ebp - 0x107c], 0
jge 0x492032
mov eax, dword [ebp - 0x107c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x492014
mov eax, dword [ebp - 0x107c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x492024
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x107c]
mov dword [ebp - 0x1c], edx
jmp 0x492030
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x107c]
mov dword [ebp - 0x1c], eax
jmp 0x491fd6
mov dword [ebp - 0x1080], 0
jmp 0x49204d
mov ecx, dword [ebp - 0x1080]
add ecx, 1
mov dword [ebp - 0x1080], ecx
cmp dword [ebp - 0x1080], 1
jge 0x492064
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1080]
mov dword [ebp - 0x1c], edx
jmp 0x49203e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x492076
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 0x49208e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1084], 0
jmp 0x4920a9
mov edx, dword [ebp - 0x1084]
add edx, 1
mov dword [ebp - 0x1084], edx
cmp dword [ebp - 0x1084], 0
jge 0x4920f6
mov eax, dword [ebp - 0x1084]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4920d8
mov eax, dword [ebp - 0x1084]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4920e8
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1084]
mov dword [ebp - 0x1c], edx
jmp 0x4920f4
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1084]
mov dword [ebp - 0x1c], eax
jmp 0x49209a
mov dword [ebp - 0x1088], 0
jmp 0x492111
mov ecx, dword [ebp - 0x1088]
add ecx, 1
mov dword [ebp - 0x1088], ecx
cmp dword [ebp - 0x1088], 1
jge 0x492152
cmp dword [ebp - 0x1c], 0
jge 0x492128
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 0x49213e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1280]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x492102
mov dword [ebp - 4], 5
mov dword [ebp - 0x1284], 0xffffffff
mov dword [ebp - 0x1288], 0
jmp 0x49217e
mov eax, dword [ebp - 0x1288]
add eax, 1
mov dword [ebp - 0x1288], eax
cmp dword [ebp - 0x1288], 2
jge 0x4921b0
mov eax, dword [ebp - 0x1288]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4921a5
mov edx, dword [ebp - 0x1284]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x49216f
mov dword [ebp - 4], 0xfffffffe
jmp 0x4921d0
mov dword [ebp - 4], 6
mov dword [ebp - 0x128c], 0xffffffff
mov dword [ebp - 0x1290], 0
jmp 0x4921fc
mov edx, dword [ebp - 0x1290]
add edx, 1
mov dword [ebp - 0x1290], edx
cmp dword [ebp - 0x1290], 3
jge 0x49222e
mov eax, dword [ebp - 0x1290]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x492223
mov edx, dword [ebp - 0x128c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4921ed
mov dword [ebp - 4], 0xfffffffe
jmp 0x49224e
mov dword [ebp - 0x1294], 0
jmp 0x492269
mov edx, dword [ebp - 0x1294]
add edx, 1
mov dword [ebp - 0x1294], edx
cmp dword [ebp - 0x1294], 0
jge 0x492280
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1294]
mov dword [ebp - 0x1c], eax
jmp 0x49225a
cmp dword [ebp - 0x1c], 0
jge 0x49228e
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 0x4922a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1298], 0
jmp 0x4922c1
mov edx, dword [ebp - 0x1298]
add edx, 1
mov dword [ebp - 0x1298], edx
cmp dword [ebp - 0x1298], 4
jge 0x4922d8
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1298]
mov dword [ebp - 0x1c], eax
jmp 0x4922b2
cmp dword [ebp - 0x1c], 0
jge 0x4922e6
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 0x4922fe
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x28]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret