Function at 0x401e50
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0xe4
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov eax, dword [str.Parker]
lea edx, [ebp - 0xb0]
xorps xmm0, xmm0
mov dword [ebp - 0xa0], 6
movaps xmmword [ebp - 0xb0], xmm0
lea ecx, [ebp - 0x50]
mov dword [ebp - 0xb0], eax
sub ecx, edx
movzx eax, word [0x417230]
mov word [ebp - 0xac], ax
mov eax, dword [str.Event]
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x98], eax
mov al, byte [0x417238]
mov byte [ebp - 0x94], al
mov eax, dword [str.Jo_Man]
movaps xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x80], eax
movzx eax, word [0x417240]
mov word [ebp - 0x7c], ax
xor eax, eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov eax, 0x2aaaaaab
imul ecx
movups xmmword [ebp - 0x68], xmm0
sar edx, 2
mov esi, edx
mov dword [ebp - 0x9c], 0xf
shr esi, 0x1f
mov dword [ebp - 0x88], 5
mov dword [ebp - 0x84], 0xf
mov dword [ebp - 0x70], 6
mov dword [ebp - 0x6c], 0xf
mov dword [ebp - 0x58], 8
mov dword [ebp - 0x54], 0xf
mov dword [ebp - 0x68], 0x656b694c
mov dword [ebp - 0x64], 0x6e614d2d
add esi, edx
je 0x401fe2
cmp esi, 0xaaaaaaa
ja 0x404775
push esi
lea ecx, [ebp - 0xd8]
call fcn.00401a50
lea ecx, [esi + esi*2]
mov dword [ebp - 0xcc], eax
mov edi, eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xb4], edi
lea ecx, [eax + ecx*8]
mov dword [ebp - 0xd0], ecx
lea eax, [ebp - 0xb0]
lea ecx, [ebp - 0x50]
cmp eax, ecx
je 0x401fcb
mov esi, eax
nop word [eax + eax]
push esi
mov ecx, edi
call fcn.004014c0
add esi, 0x18
lea eax, [ebp - 0x50]
add edi, 0x18
cmp esi, eax
jne 0x401fb0
mov dword [ebp - 0xb4], edi
lea eax, [ebp - 0xd8]
push eax
push edi
push edi
call fcn.00401090
add esp, 0xc
mov dword [ebp - 0xd4], edi
mov edi, 4
lea esi, [ebp - 0x50]
nop word [eax + eax]
mov ecx, dword [esi - 4]
lea esi, [esi - 0x18]
dec edi
cmp ecx, 0x10
jb 0x402027
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x40201d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404784
mov eax, edx
push ecx
push eax
call fcn.004048db
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
test edi, edi
jne 0x401ff0
sub esi, eax
rcl si, 0x60
mul edi
sub esi, edx
shl eax, 0xa3
ror di, 0x12
sub ebx, ecx
mov ebx, edx
imul si
xor di, ax
or ax, bx
mul si
shr dx, 0x2f
add cx, ax
ror ebx, 0x92
shr edi, 0x60
and esi, 0x2cd
mov esi, esi
mov si, si
ror si, 0x9e
dec edx
sub bx, 0x342
movzx eax, dh
xor esi, 0x3de
shl ebx, 0xad
add cx, 0x81
rcl ebx, 0xf6
sub cx, di
rol si, 0x5c
imul ecx
rcr dx, 0x1e
ror esi, 0xfc
shr di, 0xd2
rol cx, 0x8a
rol di, 0xfe
inc ecx
je 0x4020c7
rcl edi, 0x52
imul edi
movzx ecx, dx
add ebx, eax
movzx esi, ax
shl ebx, 0x20
rol esi, 0xcd
jmp 0x402136
inc ebx
dec edi
imul dx
rcl edx, 0x2a
inc si
rol edx, 0x4f
rcl ecx, 0x57
mul ebx
add edx, 0x21c
dec dx
sub edx, 0x5b
add esi, edi
dec eax
add esi, esi
shr edx, 0xd3
mov edx, edx
rol ax, 0x4b
inc eax
ror bx, 0xfb
and di, bx
imul ax
and ax, 0x12f
imul ebx
inc bx
rol di, 0x35
rcr eax, 0xb
add ax, 0x1ff
xor edi, edi
or dx, 0xe1
mul si
rol ax, 0x42
and edx, ebx
add dx, di
dec eax
mul cx
shl bx, 0x9a
rcl di, 0x7f
sub si, 0x332
or esi, edx
shr eax, 0xad
mul cx
rcl esi, 0xf5
rcl esi, 0x95
ror edx, 0xef
rol ecx, 0xed
movsx edi, dl
movsx esi, di
ror si, 0xe2
imul edx
rol dx, 0xa1
rol di, 0x80
rcl edx, 0xd3
or ebx, edi
add edx, 0x1f0
rol edi, 0xd9
rol eax, 5
mul edi
movsx eax, al
mov dx, 0x1d
mov si, 0x3f
mov ebx, ebx
add cx, si
dec esi
or ax, 0x348
shr si, 0x5f
or bx, 0x197
rol cx, 0x1e
mul ebx
rol bx, 0x11
imul di
movsx ebx, dh
imul bx
or edx, edx
movzx ebx, bl
rcr di, 0x50
and cx, 0x3b
rcr di, 0x92
inc bx
or edi, 0x95
mov ax, 0x118
rcl si, 0x30
mul edx
and dx, 0x2c9
add si, 0x249
je 0x4021d8
or ax, 0x238
mul cx
jmp 0x4021ea
dec ecx
imul ecx
add edx, 0x3bf
ror ecx, 0x91
add dx, cx
mov cx, bx
dec eax
dec edi
add eax, 0x21e
mul edi
rcl eax, 0x69
rol ax, 0x31
mul ecx
mul ebx
rol bx, 0x24
imul cx
shr bx, 0x9d
imul di
rcr eax, 0x20
add ebx, 0xca
mul edi
mul di
imul dx
or di, 0x188
rcl bx, 0x9b
xor dx, 0x3a0
rol edx, 0xb
inc ecx
rcr edi, 0x8a
rcr cx, 0xbf
sub ax, cx
rcr si, 0x5b
ror edi, 0xed
je 0x402256
test ecx, 0x12
je 0x4022d2
dec esi
rol esi, 0x46
imul edx
jmp 0x402290
dec dx
shl di, 0xdd
shl ax, 0x26
mul dx
dec eax
rol bx, 0xd2
mul dx
shl ebx, 0xdf
rcl cx, 0x61
inc ebx
dec esi
imul ax
xor di, 0x315
rcl bx, 0x45
add cx, bx
dec ax
rcl cx, 0xe1
inc edi
rcl di, 0x7d
or ebx, eax
mul edx
add dx, bx
sub edi, 0x97
shr si, 0x3c
inc ax
rol ax, 0x7b
and si, 0x3cc
or esi, ebx
shl si, 0xd4
rcl eax, 0x27
mov ax, bx
je 0x4022d2
add ebx, edi
mov di, 0x2d7
shl ebx, 0x7d
ror ebx, 0xb8
or edi, ebx
rcl eax, 0xe6
rcl dx, 0xad
jmp 0x40236c
rcr ebx, 0x21
sub si, 0x3df
rol eax, 0xd2
dec dx
dec eax
and dx, 0x240
imul si
rcr dx, 0x4a
rcr esi, 0xe1
and edx, 0x2ad
mul bx
shl di, 0x3d
imul eax
add bx, 0x58
xor ebx, ecx
rcl ax, 0x76
movzx ebx, cl
inc si
dec bx
shl ax, 0x44
shr si, 0x5f
shl di, 0x6e
rcl eax, 0xa4
imul ecx
and bx, 0x4e
and edi, 0x240
imul esi
or cx, cx
imul cx
mov di, dx
inc eax
imul eax
or ebx, ebx
shl dx, 0xe3
or ebx, 0x182
mul dx
imul si
xor ax, di
dec cx
imul di
rcr di, 0xa3
and ebx, eax
sub si, dx
shl ebx, 0x1d
rol ax, 0xa2
imul dx
dec eax
sub bx, 0x127
inc ecx
mov cx, di
mul ecx
rcl si, 0x2c
add ax, di
imul si
shr dx, 0xe1
rol si, 0xe1
rcr cx, 0x28
rcr ebx, 0xc0
and esi, edx
rcl ebx, 2
rcl ax, 1
mul edi
xor eax, 0x304
shr ax, 0x79
imul ax
inc edx
imul bx
movsx edx, dl
or si, bx
ror dx, 0x1c
inc ecx
mov cx, 0x2f4
mul dx
rcr edx, 0x5f
inc dx
inc di
movsx edx, al
rol cx, 0x90
xor di, ax
dec edi
inc eax
shr bx, 0x89
rcl si, 0x2e
imul ebx
imul ecx
shl ax, 0x40
inc eax
xor dx, cx
dec ecx
add ecx, 0xc8
je 0x4023fe
cmp esi, 0x3c
je 0x4024a9
mov edx, edi
shl esi, 0xa5
mul esi
rol ebx, 0xb4
mul di
jmp 0x402401
rcl eax, 0x45
add eax, 0x321
movzx esi, si
rcl bx, 0x10
shr eax, 0x4f
rcr cx, 0xce
rcl cx, 0x8e
sub ecx, 0x2f0
or eax, 0x2bd
shl dx, 0x38
or bx, bx
mul bx
rol eax, 0xd3
rcl si, 0xe7
rcl cx, 0x98
rcl di, 0x40
movzx eax, cl
mul dx
mov esi, esi
movzx edi, si
mul bx
mul eax
sub edx, 0x191
imul cx
add ebx, 0x14f
rcl ebx, 0x75
rcr si, 0x6b
dec dx
inc edx
and si, 0xa
inc ax
mov cx, 0x1c2
imul ecx
rol ecx, 0x2c
and ecx, 0x2fe
ror cx, 0xf3
mul si
shl dx, 0x81
imul esi
mul esi
ror edx, 0x66
and dx, di
rcl ax, 8
ror si, 0xd7
mov cx, 0x191
je 0x4024a9
and esi, 0x374
shl si, 0xc2
jmp 0x4024ce
rol cx, 0x67
sub eax, ebx
mul cx
or cx, 0x11d
rcr esi, 0x41
rcr si, 0xb6
dec ecx
imul eax
inc si
rcl ax, 0xb9
movzx ecx, bx
dec edi
and esi, 0x71
dec cx
rol edi, 0x70
inc bx
xor bx, 0xa6
and edx, 0x1a6
rcl edi, 0x59
shr cx, 0x5f
dec cx
imul eax
dec di
shl bx, 6
and esi, 0x227
inc eax
imul bx
je 0x40250d
shl edi, 0x78
movsx esi, cx
sub si, bx
dec di
mul di
jmp 0x402577
add dx, 0x33c
rcl dx, 0x57
mov edi, ebx
inc bx
mul edx
dec esi
xor eax, 0xbe
rcr dx, 0xcd
inc cx
or cx, si
imul ebx
rol edx, 0x80
dec bx
movsx esi, cl
ror dx, 0x46
sub di, di
imul edx
mov eax, esi
mov bx, si
add si, dx
rcl eax, 0xba
rol esi, 0x5d
ror edi, 0x66
dec edx
ror edx, 0xfb
mul dx
shr bx, 0xfa
rol edi, 0x11
sub edx, 0x1ae
shr bx, 0x7a
add dx, 0x336
ror cx, 0x74
ror ax, 0x1b
rol ecx, 0x1f
rcl ebx, 0xfe
je 0x402597
imul edi
dec di
xor ecx, 0x97
and ecx, 0x58
mul ecx
mov edx, 0x2b2
ror ebx, 0x45
mul esi
jmp 0x4025a3
imul edi
or ecx, 0x26
inc ax
shl edx, 0x53
xor edx, edi
and edx, 0x3a6
xor si, 0x29b
movzx ebx, si
sub ax, si
imul si
ror eax, 0x4d
imul si
shr edi, 0x85
dec dx
mul di
and edi, 0x145
mul ebx
rol eax, 0x91
shr dx, 0xb9
xor esi, ecx
rcr bx, 0x53
inc edx
rol eax, 8
shr edx, 0x75
rol eax, 0x1e
shl cx, 0xc6
rcl cx, 0x77
rcr edi, 0xc0
rcr cx, 0x7a
imul ax
mov cx, 0xae
movsx eax, si
rcl cx, 6
rcr edi, 0x6a
mov si, 6
sub cx, ax
rcl si, 0x8e
xor si, dx
rcr ecx, 0x94
rol edx, 0x65
mul edi
mov dx, ax
shr ax, 0x34
je 0x40262c
rcr eax, 0x6c
or edx, edx
or edi, eax
jmp 0x40263b
and ebx, 0x227
shl edi, 0xdb
and esi, 0x158
mul ebx
rol edi, 0x6d
mul eax
dec ax
ror bx, 0xb8
ror ax, 0x29
rol edi, 0xa3
rol esi, 0x1a
xor edx, esi
sub ecx, edx
mul ecx
and edi, ecx
je 0x40267c
cmp esi, 0x42
je 0x402722
mul si
shr dx, 0xdf
rcr edx, 0xd3
or edi, 0x21c
inc ebx
ror si, 0xac
jmp 0x4026d1
imul dx
shl esi, 0x71
rol bx, 0xf9
dec bx
rcl esi, 0xc2
inc edi
ror esi, 0xee
rol ebx, 0x38
mov bx, 0x2ff
imul esi
rol bx, 0x7c
dec di
rcl edx, 0x1b
rcl bx, 0x39
mul edi
mul edx
dec cx
imul ebx
xor eax, edi
mov cx, 0xf0
sub si, 0x23a
rol edx, 0x22
mov cx, 0x15d
and ebx, 0xd8
sub dx, 0x3a7
ror di, 0x7f
and si, cx
sub bx, 0x2c6
shl edx, 0xdd
mul ax
add ebx, 0x216
shl edx, 0x55
rcl esi, 0xe2
dec edx
mul si
ror eax, 0xbf
rcl bx, 0x32
xor esi, ebx
ror eax, 0xc1
rcr edi, 0xf6
ror esi, 0x12
imul di
mul si
shl edx, 0x6c
je 0x402722
cmp edi, 0x49
je 0x40279a
inc edx
ror ebx, 0x13
shr si, 0xf8
rol edx, 0x59
rol ecx, 0x7d
jmp 0x402749
ror eax, 0xf8
dec si
and ax, ax
or cx, bx
inc eax
imul bx
imul eax
add bx, 0x2a0
add si, 0x101
mov di, si
dec ecx
shl eax, 0xe
mul edi
rol edx, 0xd2
rcr di, 0x11
inc edx
shl di, 0xcc
rcr edx, 0x47
shl edi, 0xdc
ror cx, 0xca
and cx, 0x11c
or dx, 0x2cf
rol eax, 2
rcl dx, 0x6a
inc dx
shl di, 0x79
rcr edx, 0x41
inc edi
je 0x40279a
cmp edx, 4
je 0x402850
inc dx
imul ecx
shl edx, 0xc3
inc dx
shl bx, 0xfd
sub di, 0x223
shl di, 0xe2
jmp 0x4027d2
mov edi, 0xd0
inc ecx
mov edi, esi
dec ax
rcl ax, 0xea
mul bx
sub cx, 0x129
dec dx
imul eax
movsx edi, dx
add ax, dx
rcl bx, 0x88
add ecx, 0x3ae
ror ebx, 0x9c
mov cx, 0x13c
shl ax, 0xd7
movsx ecx, dl
add esi, 0xc2
dec ax
imul bx
imul esi
sub cx, 0x44
dec di
sub eax, 0x342
and ecx, ecx
xor ax, ax
inc eax
inc di
imul bx
shr di, 0xc9
rcl ax, 0x87
sub eax, 0x154
ror cx, 0xa4
imul ecx
imul ebx
add eax, 0x298
mul dx
ror edx, 0xc9
ror edx, 0x2c
dec edi
dec bx
and bx, 0x312
rol dx, 0xb9
mul edi
and edi, esi
or ecx, esi
dec edx
imul edx
je 0x402850
inc si
mul eax
and ax, di
mul esi
rcl si, 0xa0
rcr cx, 0x2a
rcl dx, 0x98
xor cx, 0xab
add eax, 0x10d
jmp 0x402866
movzx edi, bx
mul di
imul edx
and ax, dx
and di, 0x2ca
shl eax, 0xc9
rcr edx, 0x59
inc ax
inc eax
rcl esi, 0xcf
movsx ebx, ax
rcl di, 0xe8
mul si
mul ebx
mul edi
inc bx
rol ebx, 0x5c
rcr ebx, 0xb0
shl ebx, 0x57
inc edx
shl edx, 0x82
dec ecx
dec esi
mul ebx
dec edi
inc bx
movzx edx, bx
imul bx
mul esi
and si, 0x122
imul ebx
mul ebx
or edx, edx
ror edx, 0x84
dec dx
and si, ax
rcr bx, 0xf9
ror di, 0xf3
dec ebx
shr si, 0x87
rol ebx, 0x8e
and eax, 0xbb
je 0x4028df
shr eax, 0x50
rcr ecx, 0xd9
sub dx, si
add edi, 0xfa
and ecx, 0x2d6
dec esi
sub dx, 0x352
jmp 0x402910
add esi, edx
rcr si, 0x22
rol edx, 0x8d
or dx, 0x56
and edi, 0x368
dec ebx
ror ecx, 0x30
mul edx
or di, ax
and ecx, esi
mul esi
dec ebx
or cx, 0x287
rcr eax, 0x62
shr ebx, 0xbe
mov ecx, 0x3da
imul ax
mov di, 0x1e1
rol si, 0x56
sub ax, bx
dec dx
inc ax
mul ecx
shr ecx, 0xfe
add edx, edx
add cx, ax
sub ecx, edi
dec di
mul ax
sub ax, bx
dec eax
mul edx
imul eax
dec ebx
rcr ax, 0xdb
rcr dx, 0x4f
mul edx
shr edx, 0x16
je 0x402969
test eax, 0x34
je 0x402a60
shr cx, 0x4c
mul ecx
movzx esi, dx
ror ebx, 0xf0
shl edx, 0xa4
dec cx
jmp 0x4029ca
mul di
rol ecx, 0x54
dec di
or dx, dx
or edx, 0x2a0
shl ax, 0xfa
inc si
ror eax, 0x4b
mul eax
or ebx, 0x365
shl ebx, 0xcf
or dx, 0x323
imul esi
add ebx, 0x167
xor di, di
mov dx, 0x281
shl ax, 0x99
inc edx
rol ecx, 0x85
shl edx, 0x12
inc di
mov bx, 0x3cf
add ebx, esi
mul edi
xor ax, 0x61
rcr si, 0x4b
xor esi, 0x2e2
add edx, eax
movsx esi, bh
or ax, 0x112
dec edx
imul di
inc ax
shl ecx, 0xe7
dec si
shl eax, 0xe
inc cx
ror edi, 0xdf
shl di, 0x20
rol esi, 0x95
ror bx, 0xc0
rol edi, 0x43
xor edx, 0x301
shr bx, 0x30
xor eax, 0x10b
sub dx, ax
shl ebx, 0x2f
shl ebx, 0x78
xor dx, cx
dec ax
mov dx, ax
sub edx, ebx
rcl ecx, 0x41
mov edx, esi
add edx, 0x46
sub ebx, edi
dec cx
mov cx, si
rol ebx, 0xb4
mul ecx
and ax, ax
movsx ecx, al
rol edx, 0x76
add di, 0xe6
rol esi, 0x77
je 0x402a60
imul edi
and di, 0x1d4
rcr esi, 0xc0
mul edx
sub edx, 0xd6
mul bx
movsx ebx, cl
mov dx, 0x75
rcr edx, 0xac
ror dx, 0x2d
jmp 0x402aeb
xor cx, 0x226
ror ebx, 0xa7
shr si, 0x32
and cx, cx
rol dx, 0xa8
rcl edi, 0x7e
xor esi, 0x2f
shl si, 0x8c
shr dx, 0x41
rcr esi, 0x42
dec ecx
ror ecx, 0xfe
mov ax, 0x10f
sub eax, 0x16d
rol di, 0xc5
rcr eax, 0xc8
mul bx
sub edi, ecx
add edx, ebx
shl ecx, 0xb0
imul ecx
mul edi
shl ebx, 0x65
sub dx, 0x3d5
mov si, di
sub esi, edi
rcr dx, 0xca
movzx eax, bl
mul di
dec cx
add edx, eax
imul esi
sub si, di
shr eax, 0x4b
sub ecx, 0x2c3
mov ecx, ebx
or ebx, edx
imul ecx
mul di
inc dx
mul bx
sub ecx, 0x49
rol ebx, 0xff
mul ax
mov ebx, 0x188
add dx, 0x1c2
shl ax, 0xc9
dec dx
add si, 0x72
rol ax, 0x6a
movsx esi, bx
movzx ecx, ax
shl ecx, 0xe9
shr di, 0xb6
add cx, dx
rol edi, 0x4e
rcr eax, 0xd5
rcl edx, 0x58
inc eax
mov si, 0x16b
shr eax, 0x1c
imul edx
dec esi
mov ax, 0x149
shr ecx, 0xf7
imul eax
or cx, dx
or cx, 0xdf
xor ecx, 0xf5
movsx edi, bl
or esi, esi
rcl edx, 0x57
je 0x402b48
movsx edx, bl
jmp 0x402b74
shr edx, 0x17
xor esi, 0x2e8
sub dx, cx
rol di, 0x61
inc esi
sub esi, edx
shl edx, 0xe
shr eax, 0x19
mov eax, 0x1c0
rcl edi, 0xc6
shl dx, 0x4c
rcl bx, 0x81
shr ecx, 0xf6
dec ecx
rcr eax, 0xa0
xor ebx, 0x104
dec si
mul edx
imul edi
mul edi
add edx, 0x123
dec esi
ror ax, 0xfb
imul bx
movsx ecx, cx
rcr dx, 0xf4
and edx, eax
shl ax, 0x31
mul esi
shr ecx, 0xb5
xor ecx, 0x13d
ror ax, 4
and esi, 0x1a2
shr ebx, 0x53
dec esi
inc edi
mov edx, ecx
add dx, 0x357
rcr bx, 0xa8
inc edx
and eax, 0x59
xor edx, 0x158
je 0x402bef
rcl ecx, 0xed
rcr ax, 0x72
dec di
rcr si, 0xc
shr bx, 0x40
mov di, bx
mov edi, ebx
add edi, edx
jmp 0x402c77
imul eax
dec cx
imul di
ror edx, 0x8c
imul di
rol ecx, 0x19
rcr si, 0x29
rcr edx, 0x25
imul ecx
or cx, di
shr cx, 0xfc
sub ecx, esi
imul bx
imul ax
imul si
shr edi, 0x5f
xor edx, ecx
inc di
imul esi
rcl esi, 0x9c
inc bx
dec edx
add di, 0x2e0
imul edx
add ax, 0x1d2
xor dx, 0xde
rcl edi, 0x14
add edi, edi
shr bx, 0x87
or esi, 0x112
add esi, 0x125
shr di, 0xf2
inc si
shl ax, 0x8e
shr bx, 0xbb
rcl bx, 0xa8
mul bx
movzx ecx, bh
and di, 0x354
add edi, edi
mul di
shr edi, 0x3c
mul eax
or ebx, edx
and dx, 0x162
shr edi, 0xcf
dec ecx
sub ax, cx
rcr si, 0xdc
and edi, edx
inc eax
dec ebx
rol dx, 0x9e
rcr cx, 0xf7
imul bx
rol si, 0xee
sub edx, ebx
imul ecx
ror cx, 0x97
add si, 0x80
shl ecx, 0xf
inc di
dec eax
mul edi
imul esi
shl esi, 0x2d
xor ecx, 0x261
imul edx
or edx, edi
add cx, 0x38c
shl di, 0xf3
rol edi, 0x45
and esi, edx
rcr di, 0xf9
ror cx, 0x5c
dec ax
inc ecx
dec dx
imul esi
movsx edx, dh
mul esi
dec di
and ax, di
shr si, 0x7d
je 0x402d04
cmp edx, 0x35
je 0x402da3
movzx edi, bl
dec si
ror di, 0x7f
sub di, cx
inc di
jmp 0x402d4a
and cx, 0x265
add edx, edx
ror bx, 0xcb
inc esi
inc ecx
sub esi, ecx
rcr di, 0xf0
mul ebx
mul ax
shl edi, 0xbb
mul di
imul si
imul ax
or dx, cx
shr eax, 0x61
add edx, esi
mul edx
rcr ebx, 0x7f
rcr si, 0x12
mov ebx, 0x47
movsx eax, dl
rol bx, 0x99
shl edx, 0xe0
mov ecx, edx
inc eax
sub edi, ecx
shl esi, 0x28
imul ebx
shl edx, 0xb5
mul di
mov edx, 0x168
add bx, 0x19e
rcl dx, 0x86
ror si, 0x79
rcr eax, 0xa9
xor esi, eax
mov edx, edi
mov esi, 0x30e
inc ax
rcl edi, 0xd9
mul ax
shl eax, 0x34
add edi, ecx
je 0x402da3
inc ebx
imul dx
mul cx
inc ecx
add bx, di
or si, 0x118
add ebx, 0x75
shl esi, 0x2a
movzx ebx, cl
imul cx
jmp 0x402db7
and ebx, edx
inc ax
add edi, 0x14b
xor ax, 0x397
mul eax
shr cx, 0x97
sub edx, edx
ror ax, 0xf1
dec cx
and ecx, esi
shl ax, 0xa4
imul esi
add eax, ecx
inc eax
mov ecx, 0x36f
ror esi, 0x4d
rcl cx, 0x52
xor ecx, esi
shl eax, 0xa2
mul edx
and si, 0x111
rol edx, 0x9f
rol ax, 0x96
shl cx, 0xcc
mul ecx
imul edi
and dx, 0xe3
rol dx, 0xe1
and edx, 0x198
dec ax
or edx, 0x29d
and di, bx
and eax, edi
mov edi, 0xcd
mul esi
je 0x402e2a
dec ecx
or bx, bx
or eax, 0x1f8
ror esi, 0x10
mov edx, ebx
shr ax, 0x47
jmp 0x402e70
inc edi
movsx ebx, ax
shr eax, 0xb
or si, 0x253
inc esi
or di, dx
inc cx
sub ecx, 0xe0
rcr eax, 0xc2
imul dx
shl dx, 0xb5
dec ax
dec dx
dec ebx
movzx ecx, ax
inc edx
rol edi, 0xce
add edi, eax
shl di, 0x17
mov cx, 0x36d
inc bx
rcr edi, 0xbd
mov ax, 0x9e
mov si, 0x113
dec eax
mov si, 0x2bf
dec edi
or ax, 0x274
add ax, 0xe9
or esi, 0x201
shl cx, 0xb6
or di, dx
shr cx, 0x51
shr di, 0x3e
shr eax, 0x60
shl edx, 0x16
shl ecx, 0x10
dec eax
rcl edx, 0xad
dec cx
je 0x402ec1
ror cx, 0x3e
or ecx, ebx
mul ecx
rol di, 0xeb
shl di, 0xe
add di, 0x199
mul bx
mov ax, 0x41
jmp 0x402eef
inc si
mul ax
xor ebx, 0x1ee
dec esi
sub esi, 0x37
xor esi, ecx
or ebx, 0x313
rol di, 0x88
rol ax, 0x5b
inc eax
ror di, 0xe0
movzx esi, bx
xor si, 0xbd
add eax, esi
shr edi, 0x74
mov di, ax
shl di, 0x16
dec ax
and si, 0xc7
rcr bx, 0xb0
dec si
shr ax, 0xa3
dec si
sub si, 0x1c3
ror ebx, 0x5d
or bx, si
imul cx
imul ecx
imul si
rol di, 0xe3
movsx edi, cl
dec ecx
xor ecx, edx
je 0x402f3c
test ecx, 0x26
je 0x403039
rol esi, 0xca
jmp 0x402f9e
movsx eax, cx
and edi, 0x4e
xor ax, 0x3ca
mul edx
shl dx, 0x30
shl edx, 0x46
movsx edx, bl
rcl esi, 0xdc
rol eax, 0x30
or si, 0x191
or si, 0x24b
xor ecx, 0x355
ror ecx, 0x51
shl ecx, 0x1e
rol si, 0x27
dec eax
add cx, 0x361
and bx, 0x329
imul edx
imul ecx
and esi, 0xc6
dec ax
shl ebx, 0xda
dec si
imul ecx
mul ebx
mul edx
dec di
inc eax
xor si, ax
rcl si, 0x52
imul ax
and edx, 0x318
sub ebx, 0x2ae
add ax, 0x1fd
mov edi, 0x38e
rcl di, 0xb9
sub ecx, 0x245
inc di
dec ecx
imul eax
mov si, si
imul di
ror esi, 0x4f
rol dx, 0xb5
xor ebx, esi
shr dx, 5
sub ax, 0x357
and esi, ebx
rcr ax, 0x29
inc edx
ror si, 0xac
rcl ecx, 0x67
mov ax, di
dec bx
mul edx
mov esi, esi
imul bx
rol dx, 0x5e
movzx eax, dx
ror di, 0xe5
shl edx, 0x6c
shl edi, 0x61
dec eax
imul bx
rol edx, 0xa5
movsx ecx, dl
shr di, 0x63
dec cx
rol ecx, 0x76
inc eax
dec di
imul eax
shr edx, 0xbb
sub dx, 0x1b
inc si
mul dx
rol dx, 0x6a
je 0x403039
imul di
and si, di
jmp 0x40303d
dec edx
and bx, cx
inc edx
push 0x14
call fcn.004048ab
mov edi, eax
add esp, 4
mov dword [ebp - 0xc0], edi
test edi, edi
je 0x40327c
mov eax, dword [ebp - 0xcc]
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi], 4
mov byte [edi + 0x10], 0
cmp eax, dword [ebp - 0xb4]
je 0x40327e
mov edx, 0x16
nop
cmp dword [eax + 0x14], 0x10
xorps xmm0, xmm0
movaps xmmword [ebp - 0x30], xmm0
mov ecx, eax
mov dword [ebp - 0xb8], eax
jb 0x4030ad
mov ecx, dword [eax]
mov dword [ebp - 0xb8], ecx
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xc8], eax
cmp eax, 0x7fffffff
ja 0x40477a
mov esi, eax
or esi, 0xf
cmp eax, 0x10
jae 0x4030e8
movups xmm0, xmmword [ecx]
mov edi, 0xf
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edi
movups xmmword [ebp - 0x30], xmm0
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0xbc], edx
jmp 0x403137
cmp esi, 0x7fffffff
jbe 0x4030f7
mov edi, 0x7fffffff
jmp 0x4030ff
cmp esi, 0x16
mov edi, esi
cmovb edi, edx
lea eax, [edi + 1]
push eax
lea ecx, [ebp - 0x30]
call fcn.004019a0
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0x20], ecx
inc ecx
push ecx
push dword [ebp - 0xb8]
mov dword [ebp - 0xbc], eax
push eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], edi
call fcn.00405ae0
mov edx, dword [ebp - 0xbc]
add esp, 0xc
mov ecx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xb8], edi
mov ecx, dword [ecx + 8]
cmp ecx, dword [eax + 0xc]
lea eax, [ebp - 0x30]
mov dword [ebp - 0xc4], ecx
je 0x403210
cmp edi, 0x10
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
cmovae eax, edx
mov dword [ecx + 0x10], 0
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0xc8]
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x14], 0xf
cmp eax, 0x10
jae 0x4031b6
push 0x10
push dword [ebp - 0xb8]
mov dword [ecx + 0x10], eax
push ecx
call fcn.00405ae0
mov ecx, dword [ebp - 0xc0]
add esp, 0xc
add dword [ecx + 8], 0x18
mov ecx, dword [ebp - 0xbc]
jmp 0x403226
cmp esi, 0x7fffffff
jbe 0x4031c5
mov esi, 0x7fffffff
jmp 0x4031d0
cmp esi, 0x16
mov eax, 0x16
cmovb esi, eax
lea eax, [esi + 1]
push eax
call fcn.004019a0
mov edx, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xc8]
mov dword [edx + 0x10], ecx
inc ecx
push ecx
push dword [ebp - 0xb8]
mov dword [edx], eax
push eax
mov dword [edx + 0x14], esi
call fcn.00405ae0
mov ecx, dword [ebp - 0xc0]
add esp, 0xc
add dword [ecx + 8], 0x18
mov ecx, dword [ebp - 0xbc]
jmp 0x403226
push eax
push ecx
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx + 4]
call fcn.004010f0
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x30]
cmp edi, 0x10
jb 0x403254
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x40324a
mov ecx, dword [eax - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404784
push edi
push ecx
call fcn.004048db
add esp, 8
mov eax, dword [ebp - 0xcc]
mov edx, 0x16
add eax, 0x18
mov dword [ebp - 0xcc], eax
cmp eax, dword [ebp - 0xb4]
jne 0x403090
mov edi, dword [ebp - 0xc0]
jmp 0x40327e
xor edi, edi
test edi, edi
je 0x403295
lea ecx, [edi + 4]
call fcn.00401900
push 0x14
push edi
call fcn.004048db
add esp, 8
movaps xmm0, xmmword [0x417260]
lea ecx, [ebp - 0x30]
xor esi, esi
mov dword [ebp - 0x3c], 0x4091eb85
mov dword [ebp - 0xb4], esi
lea edx, [ebp - 0x4c]
mov dword [ebp - 0x1c], esi
xor eax, eax
mov esi, ecx
mov dword [ebp - 0x38], 0x43df451f
sub esi, edx
mov dword [ebp - 0x34], 0x43b24ccd
sar esi, 2
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0xbc], eax
xor edx, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
movups xmmword [ebp - 0x4c], xmm0
test esi, esi
je 0x40333d
cmp esi, 0x3fffffff
ja 0x40477f
push esi
lea ecx, [ebp - 0x24]
call fcn.004019f0
mov edi, eax
lea ecx, [ebp - 0x4c]
lea eax, [ebp - 0x30]
mov dword [ebp - 0xbc], edi
sub eax, ecx
mov dword [ebp - 0x24], edi
push eax
mov dword [ebp - 0xc4], eax
lea esi, [edi + esi*4]
mov eax, ecx
mov dword [ebp - 0xb4], esi
push eax
push edi
mov dword [ebp - 0x1c], esi
call fcn.00405ae0
mov eax, dword [ebp - 0xc4]
add esp, 0xc
sar eax, 2
mov edx, esi
lea ecx, [edi + eax*4]
mov dword [ebp - 0x20], ecx
mov eax, ecx
sub eax, edi
sar eax, 2
test eax, eax
je 0x403380
mov dword [ebp - 0xc4], 0x3fae147b
cmp ecx, edx
je 0x40335e
mov dword [ecx], 0x3fae147b
jmp 0x403380
lea eax, [ebp - 0xc4]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.004012d0
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0xbc], eax
sub edx, 0x147
rol dx, 0x92
rol esi, 0x49
imul di
add esi, 0x2fa
add cx, 0x2ae
or di, si
or edx, esi
shl ecx, 0x43
imul ecx
rcl ax, 0x6d
mul ebx
rcr ebx, 0x2c
sub edx, 0x322
or ebx, 0x274
rol ax, 0x81
ror ebx, 0x59
mul bx
xor eax, 0x7c
mov edi, 0x298
ror edx, 0x84
sub ax, si
or eax, ebx
dec edx
shl eax, 0xc6
dec edi
dec di
shl bx, 0xd5
shl edx, 0x15
inc edi
shl bx, 0x96
mul dx
and esi, ecx
rcr edi, 0x1c
xor eax, ebx
imul edx
mul ecx
xor eax, 0x310
dec si
xor edi, 0x2a7
shr di, 0x40
shl bx, 0xfa
mul eax
shl ecx, 0x19
rcr dx, 0x94
dec ax
mul edx
mov ax, 0x158
dec edi
shr di, 0x2b
movzx esi, di
dec ebx
rcr ax, 0x37
movsx edx, al
mul ax
imul bx
movsx edx, cx
or ax, 0x361
inc eax
and eax, 0x4f
sub ebx, 0x197
sub cx, di
rcr esi, 0x54
or ax, di
add dx, 0x1a9
shl si, 0x24
mov esi, 0x179
ror bx, 0x5d
inc si
xor ecx, edi
mov si, si
xor dx, 0x106
xor di, 0x8b
shl bx, 0x12
ror dx, 0x16
rol si, 0x24
shl dx, 0x50
or ecx, ecx
ror ecx, 0xf4
imul ax
imul si
and si, di
shl edx, 0x36
dec edi
add ecx, edi
imul dx
rcl di, 0xcb
add esi, 0x2fa
imul edx
mul di
mul ebx
imul esi
inc si
inc dx
xor cx, bx
mul ax
shl edi, 0x7b
shr edx, 0xba
dec eax
movsx edx, bx
mov edi, eax
add edx, 0x29a
ror dx, 0x5f
rcl ax, 0xed
dec edi
inc edi
mul ecx
mul esi
inc di
inc ebx
sub eax, edx
shr ebx, 0xe7
dec esi
mov edi, eax
je 0x4034e3
mul edi
jmp 0x4034ec
inc esi
dec si
or dx, ax
add bx, si
imul eax
xor ebx, 0x2e9
rcl si, 0x33
shl ebx, 0x5f
dec si
shr edx, 0x98
xor ecx, 0x1f7
xor esi, edi
inc ebx
shr edx, 0x46
shr eax, 0xee
dec edi
and esi, 0x2a8
inc edi
mul si
rcr ebx, 0x47
sub ebx, 0x6b
rol dx, 0x87
mul edx
rcl bx, 0xa1
rol cx, 0x77
rcr cx, 0xab
mul di
mul si
movzx esi, si
xor ecx, eax
shl si, 0xcc
rcr eax, 0x79
inc si
rol si, 0x3c
inc edi
inc si
mul ebx
add dx, 0x3b3
and eax, edx
or eax, 0x170
ror bx, 0x26
rcl dx, 0x50
mul ecx
sub ebx, 0x2f
ror cx, 0xfe
shr edx, 0x21
rol di, 0x14
inc edx
shr di, 0x49
shl ebx, 0x33
add ecx, 0x151
dec ebx
je 0x40359e
add si, 0xf2
and eax, ebx
add ax, 0x287
shr ax, 0x30
mul ebx
sub si, 0x1cc
mul eax
jmp 0x40360d
dec edx
imul dx
rcl si, 0xd
shr ax, 0x46
imul eax
imul ax
inc ax
inc ax
mul di
xor ax, bx
shr cx, 0xec
shr cx, 0xc3
rol edx, 0x2b
movsx esi, dx
movsx eax, dh
mul bx
sub edx, 0x2b6
mul edx
sub bx, dx
mul esi
inc edi
rol cx, 0x5f
add ebx, esi
xor edi, esi
shr edi, 0x94
and ecx, 0x3cb
xor edi, 0x1dc
imul esi
dec bx
inc si
rcl edx, 0xab
movzx ecx, si
ror edx, 0x77
imul si
add esi, 0x100
rcr edx, 0x55
or dx, 0x192
mul esi
inc dx
dec edi
inc bx
rcl edi, 0x92
and bx, ax
inc cx
shr ax, 0xf1
movzx ecx, dh
movzx ecx, di
ror esi, 0x22
dec dx
or dx, 0xc
mov eax, 0x153
imul si
inc eax
and esi, 0x151
rcl ecx, 0x41
or dx, 0x1af
mul eax
mul ebx
and cx, 0x9c
shr edx, 0xf3
mul ax
inc di
imul edx
imul si
rcr ecx, 0x72
xor ebx, 0x309
rol dx, 0x1d
inc di
add cx, cx
shl dx, 0xe4
mul si
mov edi, 0x2a9
rcl ax, 0xde
sub esi, 0x385
inc bx
shr ax, 0xb
mul ebx
je 0x4036b1
cmp ebx, 0x3d
je 0x4037f6
xor dx, cx
rcl si, 0xb
dec ecx
rol si, 0x87
mov dx, 0x361
jmp 0x403737
sub eax, 0x3cf
and cx, cx
shr bx, 0xc
add ebx, 0xba
add di, ax
rol esi, 0x3e
ror bx, 0xb4
and eax, eax
mul edx
sub eax, ebx
rol ebx, 0x8d
dec bx
dec si
ror di, 0xf1
sub di, cx
inc ax
add cx, 0x11e
sub eax, edi
rcl eax, 0x65
or eax, 0x7f
and ecx, eax
mov eax, edx
add eax, ecx
dec edi
or ax, 0x260
rcl si, 0x3e
shl di, 0xff
sub edx, eax
rcr cx, 0x3d
rcl bx, 0x73
and ecx, 0x7b
inc ax
ror di, 0xc4
sub edi, esi
inc ax
ror cx, 0x50
imul dx
add ecx, 0x3df
rol ax, 0x65
imul ax
shl cx, 0xc1
dec ax
rcl edi, 0xa
ror ecx, 0x4d
inc edx
shl di, 2
inc ax
add ebx, 0xd0
xor cx, 0x1dc
mov si, 0x1ee
dec ebx
mul si
add ebx, ecx
add bx, si
rcr di, 0xa3
or di, 0x3cf
imul eax
mul ebx
mul ax
rcr dx, 0xfa
imul eax
shr bx, 0x72
imul edx
mov dx, si
dec si
sub ax, bx
mov di, 0x63
inc bx
rcl esi, 0x76
rcr bx, 0xdc
rcr dx, 0x86
rcr si, 0x5c
imul ecx
sub edx, 0x2e1
inc bx
shr edi, 0x36
sub ebx, 0x3d1
rcl dx, 0x11
add bx, 0x21f
rol dx, 0x37
inc edx
add ax, 0x265
dec edx
mul esi
mov dx, 0x2db
inc ecx
sub bx, 0x26c
shl di, 0x93
and di, bx
rcr ax, 0x74
dec dx
inc bx
mov eax, ebx
je 0x4037f6
ror ebx, 0x89
rcl esi, 0x7f
imul edx
and edx, 0x37
and dx, 0x3e0
rcl dx, 0x77
rcl dx, 0x9e
mul eax
mul bx
jmp 0x403820
mov eax, 0x250
dec dx
or di, 0x106
dec cx
inc eax
rcl dx, 0x5d
imul edx
rcl ebx, 0xcc
imul dx
movzx edi, cx
and di, di
movsx ecx, dx
inc esi
sub bx, 0xe3
sub cx, bx
rcl bx, 0x92
movzx eax, al
mul edx
imul edx
rcr bx, 0x85
imul cx
shl si, 0xa5
add ax, 0x2dd
xor bx, 0x215
mul eax
sub eax, esi
dec ecx
mul bx
rcl edi, 0x9e
movzx edi, cx
dec ecx
add eax, 0x306
rol ebx, 0xc8
xor si, 0x26
rcl edi, 0xd9
ror dx, 0xbf
inc edi
and eax, 0x278
rcl si, 0xb
imul edx
inc si
dec ecx
rcr esi, 0x77
dec di
imul ecx
imul cx
sub edi, 0x152
inc edi
je 0x4038a8
shl cx, 0x2c
add edx, edx
and esi, 0xec
ror esi, 0xdc
and cx, 0xd6
inc bx
dec esi
shl esi, 0x8c
movzx esi, bx
mul di
jmp 0x4038f8
rcl ax, 0x9e
movzx edx, cl
shr dx, 0xed
movsx edi, cx
imul esi
rcl ax, 0x94
inc ecx
shr ecx, 7
and di, bx
add edi, 0x46
ror ecx, 0x59
xor edi, 0x221
dec edx
shl esi, 0x2e
imul di
imul edx
shl edi, 0xf
mul eax
shr eax, 0x47
ror cx, 0x6f
sub dx, 0x396
imul ebx
shl eax, 0xa6
rcr ax, 0xb8
and edx, 0x380
dec edi
ror ax, 0x40
inc si
ror eax, 0x2b
shr ebx, 0x5d
mul esi
imul cx
rol ebx, 0xf7
shl esi, 1
rcl eax, 0x96
mul bx
inc esi
inc cx
sub edi, eax
rcl esi, 0xcf
mul di
mul dx
add ax, 0x211
mov esi, 0x24d
mul di
rcl ebx, 0x37
rcl edi, 0xd1
or eax, ebx
rcr si, 0xbc
inc esi
rcl dx, 0xbf
inc cx
mul ebx
shl bx, 0xea
ror dx, 0x31
and edi, 0x361
imul dx
sub eax, 0x191
imul ax
ror eax, 0x33
dec cx
shr edx, 0xf8
shr ebx, 0xfc
rcl bx, 0xf4
imul si
dec ecx
shr ax, 0x88
mul di
sub di, dx
sub edi, 0x18b
dec di
add cx, 0x2af
ror eax, 0x2b
ror esi, 0xb
je 0x4039af
shr di, 0xce
sub edi, 0x2f2
imul si
dec ebx
dec eax
rol eax, 0xa8
shl ebx, 0x5f
mul edi
dec ebx
rcl esi, 0xe7
jmp 0x403a5b
mov si, 0x45
sub ebx, 0x122
add dx, bx
shr cx, 0x2b
ror ax, 0xf6
shl edi, 0xf2
ror edi, 0xc0
imul edi
movsx edi, bh
mov bx, 0xb4
shr eax, 0x35
shr bx, 0x76
shr dx, 0xff
imul di
rcr ecx, 0x60
shl si, 2
xor ax, 0x291
imul di
rol edx, 0xb1
rcr di, 0x5d
mul edx
rol edx, 0x6c
shl eax, 0xfc
and cx, 0x24a
dec esi
rol ecx, 0x82
xor dx, ax
shl cx, 0x34
or eax, 0x329
dec di
inc di
rol esi, 0x7b
mov esi, 0x257
add ebx, ecx
rcr edx, 0x77
and dx, 0x261
or di, 0x17c
xor ecx, 0x36c
inc si
movsx eax, bx
or edi, 0x131
rol ax, 0xc7
rcl edx, 3
xor dx, 0x1eb
dec ebx
inc edi
add si, 0x10
rcl si, 0xe9
mul bx
imul bx
dec ax
rcl ebx, 0xb1
shl dx, 0x61
inc esi
add eax, ecx
imul bx
dec ecx
ror ax, 0xc2
or cx, dx
mov ebx, 0xac
rcr dx, 0xb8
rcr di, 0x14
dec dx
xor bx, dx
imul edi
mov edx, esi
and esi, 0x296
sub esi, 0x4e
rcr si, 0xb9
shr eax, 0xc3
rcr si, 0xa7
rcl si, 0xbb
sub ecx, edi
dec si
inc ax
rcl dx, 0x65
ror esi, 0xdb
add di, bx
add ebx, ebx
add ecx, eax
shl eax, 0xe4
sub si, bx
rcl edi, 0x1b
imul dx
mul eax
rcr dx, 0x5d
rol edx, 0x60
shr esi, 0x61
inc ecx
je 0x403aed
and edx, 0x138
ror dx, 0xca
shr eax, 0xad
mov cx, di
rcl di, 0x5c
dec cx
rol eax, 0x93
jmp 0x403b73
shl dx, 0xfd
shl edx, 0xea
sub cx, 0x33a
add bx, 0x28a
rcl ax, 0x6b
or cx, 0x1f5
and dx, 0xd3
xor esi, ecx
add cx, di
mul ebx
shl cx, 0xe1
ror eax, 0x42
mul edi
rol ax, 0x9b
inc eax
ror edi, 0xaa
movsx edx, ax
add dx, 0x147
imul si
rcl cx, 0x10
and eax, 0x33
or ebx, 0xab
rcl cx, 0xa
shl edi, 0x60
sub cx, 0x24b
ror dx, 0x4a
mul edx
inc bx
ror ax, 0xc9
dec di
ror dx, 0xed
imul eax
xor cx, 0x6c
mul edx
ror ebx, 0x78
add edi, ecx
add edx, 0x3c8
rcl eax, 0x72
mul si
mov di, 0x24a
dec di
shr di, 0x3f
ror ax, 0x3b
ror cx, 0xe1
dec edx
je 0x403ba0
inc dx
sub edi, edi
xor ecx, edx
shr si, 0x79
rcr cx, 0x3f
or di, 0xd4
movsx edi, cx
jmp 0x403c01
mov di, 0xe2
dec dx
imul edi
mul cx
shl ebx, 0xf8
mov eax, 0x327
xor edx, 0x94
or bx, dx
and di, 0xbc
imul ax
dec ecx
shr edx, 0xae
shl di, 0x19
rcl edi, 0xb6
movzx ecx, dx
mul esi
imul esi
mul di
shl edi, 0xe8
sub ecx, 0x18c
movzx edx, bx
inc ecx
xor edx, 0x337
rcr eax, 0x23
and eax, eax
shl esi, 0x38
shl esi, 0xcb
mul ebx
dec di
xor edx, 0x28d
rol ebx, 0x8f
dec eax
mul esi
mov edi, 0x2a9
rcr ebx, 0x67
inc si
rcr dx, 0xbb
mov ax, 0x146
mul dx
shr si, 0x45
shl eax, 0x2f
rcr cx, 0xa7
imul ax
mov ebx, 0x37a
or edi, ebx
sub ax, 0x20c
sub edi, 0x196
and di, 0x2b0
inc edx
rcl bx, 0x5b
imul edx
add ax, dx
rcr cx, 0x1d
mov ax, di
inc edi
imul cx
and bx, 0x52
mul bx
and dx, 0x3a3
shr ecx, 0x4b
inc di
and si, 0x2fb
add edx, 0x173
dec si
shl di, 0x1d
movzx esi, bx
rcr edi, 0xb3
inc ax
ror si, 4
inc di
shl di, 0xc1
shl bx, 0x91
inc cx
and bx, 0x19e
rcl ecx, 0xf7
inc ebx
or edi, ebx
shr si, 0x27
je 0x403ccc
test esi, 0x49
je 0x403d82
rol esi, 0x6e
add esi, 0x36d
rcl ebx, 0x76
xor dx, si
mov bx, dx
rol dx, 0xe5
or ax, 0x19
shl bx, 0xe7
jmp 0x403d46
and cx, 0x8f
dec dx
dec ax
add eax, edi
dec eax
mov edx, 0x137
imul ecx
shl si, 0x2f
add edx, 0x1ca
or esi, edx
xor edi, 0x8d
rol bx, 0x91
shr di, 0x6c
xor dx, 0x3e6
rol di, 0x44
or edx, edi
xor ax, 0x34e
movzx edx, bx
shl esi, 0x53
inc eax
and esi, 0x369
mul esi
mul si
add dx, di
mul ebx
mov ebx, 0xe4
shl esi, 0x43
add ecx, ecx
shr dx, 0xd1
rcl si, 0x2d
add ecx, edx
sub ecx, 0x128
mul si
rol esi, 0xfa
rcr cx, 0xfc
add si, si
imul ax
or eax, 0x377
rcr cx, 0xf5
mov edx, 0x167
inc edi
add edi, ecx
inc esi
add si, 0x3c5
inc ebx
mov edx, esi
ror edx, 0x16
sub di, si
je 0x403d82
cmp edx, 0x1a
je 0x403e1b
shl ax, 0x84
movsx ecx, bx
dec di
sub di, si
jmp 0x403df8
inc eax
mov dx, dx
rcr si, 0x65
dec dx
shr ecx, 0x7e
mul dx
shr ax, 0xbd
movzx ebx, dh
rcr cx, 0xe8
rol edx, 0x98
mul di
and dx, bx
imul bx
mul si
imul dx
dec ax
imul bx
imul esi
imul ebx
dec ax
add si, ax
dec dx
rcr edi, 0x9c
xor ecx, edx
movzx edi, al
imul edi
rcr bx, 0x5b
rcr ax, 0xab
sub si, cx
add si, dx
mov eax, esi
dec ebx
shl eax, 0x48
shr bx, 0x52
ror edx, 0x3b
and edx, eax
dec ax
dec di
dec edx
dec ax
dec eax
dec ax
inc edi
sub ecx, ecx
inc edi
dec di
imul ebx
shr cx, 0xd5
inc ebx
je 0x403e1b
shl bx, 0xbc
ror si, 0x82
sub bx, 0x125
inc ebx
rcl di, 0xf7
add ebx, edi
imul bx
imul di
jmp 0x403e93
shr ax, 0x48
xor ax, cx
shl bx, 0x5e
or edi, edi
and edx, 0x17b
sub si, si
mov ebx, 0xbd
imul esi
sub bx, 0x39
rol di, 0x1b
inc ecx
inc ax
xor ebx, 0x216
dec cx
xor edx, 0x1e7
rcr di, 0x37
rcl esi, 0xf8
dec cx
inc dx
shl di, 0xd2
or dx, dx
inc bx
movsx edx, ax
inc ebx
and cx, 0x3e0
ror esi, 0x6f
mul eax
imul si
dec ebx
imul bx
movsx esi, bl
or ecx, eax
mov ecx, edi
add dx, 0x276
rol di, 0xf7
dec eax
shr edx, 0x34
mul ebx
shl esi, 0x24
xor ecx, edx
add esi, 0x3b1
dec edx
inc bx
shl esi, 0xdd
and si, cx
and esi, 0x24a
mov ecx, 0x133
dec eax
imul ebx
add eax, ecx
xor si, ax
inc bx
or si, cx
rcl cx, 0xdf
imul ax
mov edx, 0x1c6
mul edi
or esi, 0x1d6
or bx, 0xab
shr edi, 0x27
sub ax, bx
inc esi
sub esi, 0x20d
sub ax, dx
rcr ecx, 0x72
shr edx, 0x44
xor edi, 0x1f7
sub si, dx
add bx, 0x3b1
sub edi, 0x22c
movzx eax, si
xor cx, si
inc si
xor si, 0x322
rcl edx, 0xd8
add esi, edi
shr ecx, 0x2e
mov ebx, edi
imul ecx
rol eax, 0x5e
sub cx, dx
je 0x403f48
test ebx, 0x18
je 0x403ff4
imul ecx
sub eax, 0x27c
rol ax, 0x4d
shr ebx, 0x93
shr edx, 0xc4
and ecx, 0x3a1
jmp 0x403fd9
movzx eax, al
shl bx, 0x83
sub edx, esi
mov si, bx
add ax, cx
mov si, 0x2a1
mul ax
inc ebx
inc cx
mul cx
mov edx, 0x1a4
xor esi, ebx
rcr ecx, 0xe3
ror dx, 0x45
or bx, 0x41
or eax, ebx
xor eax, esi
mov dx, 0x80
shl di, 0x19
ror cx, 0x16
shl ebx, 0xc3
rcl di, 0x16
shl edi, 0xdd
dec esi
rcr cx, 0x2c
shr cx, 0x71
rol bx, 0x7b
mov si, 0xc1
and eax, 0x259
rol cx, 0xc6
ror ecx, 0x74
add edi, 0x2b4
mov eax, ebx
add eax, 0x11b
sub eax, esi
mul esi
rcl bx, 0xf0
mov ax, 0xb
mul edi
add ecx, edx
ror ebx, 0x74
shl edi, 0x6e
rcl ebx, 0xdb
shl edi, 0xef
rol eax, 0x50
and eax, eax
rcr eax, 0xf0
dec ebx
je 0x403ff4
test ecx, 5
je 0x404067
add eax, 0x26c
add ax, 0x1ad
jmp 0x404050
rol ax, 0xef
rcr edi, 0x92
sub cx, 0x177
inc dx
mov bx, 0x34a
and edx, 0x21a
shr di, 0xcd
movzx eax, cl
mul edi
shr edi, 0x3d
and ebx, 0x161
ror si, 0xed
shl esi, 0xb3
imul bx
shr si, 9
ror eax, 0x51
shl di, 0x83
or cx, 0x2f1
inc edx
dec ebx
rcl eax, 0x78
sub di, di
xor di, 0x2b0
rcr ecx, 0xba
add edi, 0x3a7
inc dx
mul cx
mul edx
inc dx
je 0x404067
imul eax
add eax, ecx
rcl esi, 0xba
mov ebx, 0x15a
jmp 0x4040e0
rcr di, 0x95
rol cx, 0x35
shl cx, 0xf3
ror si, 0x4d
inc dx
inc edx
or ax, 0x3b5
shr esi, 0x40
ror di, 0x76
movzx ebx, cl
inc ecx
sub di, ax
mul ecx
ror dx, 0xf2
rcr di, 0x59
or edi, 0x31f
mul dx
sub eax, 0x9c
or cx, 0xd3
mov di, 0x89
mul ecx
shl si, 0xd2
add ebx, 0x40
xor cx, di
rcl cx, 0x39
shl edi, 0x34
shr edi, 0xcb
add cx, si
ror cx, 0x6c
or esi, 0x233
shr dx, 0xd9
inc di
or edx, edx
shl ebx, 0xf4
shr ax, 0x7e
dec ebx
rcl eax, 0xe2
mul edi
inc ecx
and edx, 0x28e
add ebx, 0x2a1
add edx, 0x202
imul edi
mul esi
or ecx, 0x2c5
inc si
rcr edi, 0xc1
rcl cx, 0x48
inc esi
dec dx
and ecx, edi
imul ebx
mul ecx
rol eax, 0xbf
dec edi
shl si, 0x98
sub di, 0x340
shl eax, 0xd2
dec ecx
rol esi, 0x92
imul cx
rcr ecx, 0xb6
je 0x40414e
shl di, 0x1a
shl di, 0xe1
shr si, 4
mul ecx
rcr si, 0xb3
and ebx, edx
shr edx, 0xdf
xor eax, 0x124
jmp 0x40418f
movsx edx, dh
shr edi, 0x2e
shl di, 0x22
sub ecx, edx
movzx ebx, cl
mul eax
rol edi, 0xd2
inc dx
imul esi
or eax, 0x363
or ecx, 0x31f
and si, si
mul di
rol bx, 3
imul ebx
imul edx
shl dx, 0xc2
dec ecx
mov ax, cx
shl esi, 0xdf
rol esi, 0x57
inc si
rcr eax, 0xd5
shr edi, 0x6f
rol ebx, 0x57
rol ecx, 0xe3
shr edx, 0xb2
dec cx
xor si, dx
inc di
ror bx, 0xa4
ror ebx, 0x71
mul cx
rol bx, 0xa0
imul si
and edx, 0x59
or cx, 0x3cf
dec ebx
add esi, 0xe3
imul ax
dec cx
imul esi
rol dx, 0xf7
or di, cx
rcr ecx, 0x5f
inc di
je 0x4041ea
cmp eax, 0x56
je 0x4042e1
sub di, di
or esi, eax
jmp 0x40422c
dec cx
add ecx, eax
rcr edx, 0x88
shr edi, 0xfa
imul ax
ror esi, 0x3c
imul ecx
add esi, 0x147
shr ax, 0xd7
mul eax
xor dx, 0x333
shl ebx, 0xce
rcr edi, 0x2e
rol ebx, 0x2b
and esi, eax
or si, 0x2f3
shl ebx, 0x13
xor di, 0x291
rcl cx, 0x4e
ror eax, 0x1a
inc edi
and edi, 0x235
rcr dx, 0x16
mov bx, cx
mov edi, 0x359
add bx, 0x27c
and edi, 0xd8
xor dx, ax
or edi, 0x1e6
and cx, 0x2e0
shr bx, 0xcf
mov di, bx
dec ecx
dec ecx
rcl ecx, 0x68
shr ax, 0x6a
ror ecx, 0xfc
or esi, ebx
ror ebx, 9
ror bx, 0x99
rol ecx, 0x77
or eax, ebx
mov cx, 0x2ec
ror bx, 0xfa
xor edi, esi
mul bx
or cx, 0x3d8
shr dx, 0xb4
and esi, 0x14d
and ax, 0x2a6
and ax, 0x257
rol eax, 0xc5
inc dx
and edx, eax
rcl di, 0xf1
add esi, ebx
add dx, di
rol cx, 0xda
inc ebx
or esi, 0xc3
rol edi, 0x43
rol edx, 0x96
mul di
je 0x4042e1
test ebx, 0x30
je 0x4043de
rcl bx, 0xb8
movzx ecx, si
and dx, di
rcr eax, 0x7f
jmp 0x404370
mov di, 0x33a
imul bx
rol edi, 0xa0
imul esi
add cx, si
rcr edi, 0x98
shr si, 0x79
mul di
mul ax
mov esi, 0x13c
rcr cx, 0x7c
imul si
inc si
imul ebx
movsx eax, cl
rcr dx, 6
and ax, 0x2df
shl edx, 0xb8
imul ax
rcr ecx, 0x4f
inc ax
inc di
movsx eax, dh
rcr bx, 0x38
and edi, 0xcd
imul esi
rcr ax, 0xf5
mul di
add edi, 0x2cf
rcr esi, 0xee
sub cx, 0x279
and eax, 0x69
ror si, 0x57
rcr esi, 0xc6
mov ecx, ecx
sub ax, 0x70
mov dx, 0x2b4
rcl eax, 0xd3
inc dx
shr ecx, 0x6c
dec di
rcl cx, 0x13
and dx, 0x110
imul edx
rol bx, 0x1e
shr bx, 0x28
shr edx, 0xa3
movzx esi, bl
or eax, 0x72
and ecx, 0x2f8
and bx, 1
ror ebx, 0x2e
movzx ecx, di
rcr edx, 0x2f
shr dx, 0x84
inc dx
inc cx
inc dx
sub bx, 0x3a2
mul ebx
mul esi
shr bx, 0x32
dec edi
and di, 0x65
sub eax, edx
inc cx
rol di, 0x88
inc edi
sub si, 0x2ed
add ebx, edx
imul ecx
add eax, 0xd9
sub bx, 0xc1
mov esi, 0x153
rcr dx, 0x5f
je 0x4043de
movsx edi, al
jmp 0x40443a
mul cx
dec ax
shl ebx, 0xb
ror eax, 0x39
rcl edx, 0x79
dec edi
mul esi
dec si
mul di
mul bx
inc edx
and bx, 0x84
ror si, 0x2b
mul cx
movsx ebx, dl
sub di, 0xfb
sub edi, 0x201
rol ax, 0xa3
shr dx, 0x2d
shr edi, 0x84
rcl ecx, 0xf8
rcl di, 0x2b
or di, dx
sub edx, edx
dec ecx
and dx, 0x1de
imul ax
shl si, 0x9d
rcr di, 0x6f
mul edx
dec cx
rcr edi, 0x28
mul eax
rol eax, 0xa6
sub eax, edx
inc di
rcr si, 0x52
rcl edi, 0x61
inc di
rol bx, 0x69
movzx edx, bx
rcl di, 0xc
shl si, 0x6b
rcl di, 0x10
add si, 0x56
rcl esi, 0xb5
je 0x404495
test ebx, 0x17
je 0x404515
ror edx, 0xd1
add ax, 0xfe
xor di, 0x1a9
rol ecx, 0x71
add si, dx
rcl esi, 0xcd
movsx edx, al
jmp 0x404501
mul ebx
or dx, 0x1ba
add eax, 0x30d
mul ecx
mul si
rcr edi, 0x25
inc esi
ror esi, 0x73
shr edi, 0x65
and bx, si
xor ax, di
mul esi
shl edi, 0x91
shr di, 0x69
shl esi, 0x76
rcr di, 0xf5
ror eax, 0x38
shr ecx, 0x62
mov cx, dx
mul si
imul si
rcl dx, 0x64
rol bx, 0xc0
rcr ax, 0x84
rol ax, 0x30
movsx edi, si
rcl ecx, 0x5b
inc edx
add di, 0x8b
add ecx, eax
dec edx
imul bx
imul esi
xor esi, 0x2ab
imul ebx
inc ax
inc ax
shr edx, 0x2d
je 0x404515
rcl ecx, 0x56
mul bx
jmp 0x4045ac
shr edi, 0x25
rol di, 0x46
add ax, bx
imul edx
dec ax
mul esi
dec ecx
ror edx, 0x92
rcl eax, 0x39
imul eax
movzx esi, bx
add bx, dx
sub di, si
rcl si, 0x51
sub edx, ecx
add eax, 0xce
shr di, 6
ror ecx, 0xa6
mul di
or di, 0x121
or bx, cx
shr di, 0x12
and ax, bx
dec dx
ror dx, 0x70
rcl edi, 0x86
sub eax, eax
mul ax
add di, ax
rol eax, 0xcb
rol ax, 0x46
xor ebx, ebx
sub bx, 0xc9
dec eax
mul ecx
inc dx
imul ecx
rol ax, 0x97
xor ecx, 0xda
movzx edi, dx
and ebx, edx
rcr si, 0xa5
rol ebx, 0xff
shl di, 0x87
mov ecx, 0x146
rcr eax, 0xe6
sub dx, 0x29d
dec si
add edx, edx
rol ecx, 0x51
imul ebx
shr bx, 0x8c
or dx, 0x2a
rcl di, 0x28
xor di, si
imul ecx
rcl ecx, 0xc8
movsx ebx, cl
shr ax, 0xf2
imul edx
ror di, 0xd
ror edi, 0x9d
shr eax, 0x16
sub bx, 0x201
shr edx, 0x9b
rcr edx, 0xb2
shr di, 0x37
add eax, edi
je 0x4045f8
rcl si, 0xea
movsx ecx, bx
or edi, edi
inc dx
jmp 0x404649
and dx, ax
imul di
imul cx
or ecx, 0xd6
shr si, 0xfb
dec edi
inc dx
mul edi
xor eax, ecx
mov bx, 0x234
mov ax, 0x141
shl edi, 0x66
shr edx, 0xab
dec esi
rcr edi, 0xe3
rol si, 0x2a
dec bx
dec edx
dec esi
inc eax
and bx, 0x23a
rcl edi, 0xbd
dec esi
shr edx, 0x18
add si, cx
shr esi, 0xa8
movsx esi, al
rcr edi, 0xf3
rcl dx, 0xb6
ror ebx, 0xf7
add ax, ax
mul si
mov bx, 0x2da
dec ebx
mov ax, 0x3d1
movsx ebx, dl
rcl bx, 0xc7
ror cx, 0x4b
inc dx
mul di
and eax, 0xbe
ror si, 0x1d
mov di, di
shr cx, 0x52
mov di, cx
rcr edi, 0xb9
inc edx
movzx edi, bx
mov ebx, 0x1cf
ror si, 0x28
xor dx, di
and ax, 0x321
rcr edi, 0x7f
push 0x100
call fcn.004048e9
push eax
call fcn.004048f2
add esp, 8
je 0x4046b1
jne 0x4046b1
jmp 0xcf01ad4b
ror si, 0x1b
dec dx
and ebx, ecx
mul dx
mul si
ror edx, 0xee
call fcn.00401d40
mov eax, 0x28
cmp eax, 0xd4
jl 0x4046d5
call 0x6b367a6b
add eax, 0xc468016a
jno 0x404720
xor esi, esi
push 5
push 1
push str._d_Anthony_Martin_Grosvenor_Christopher__d
call 0x404790
mov al, byte [esi + section..BsS]
add esp, 0xc
add al, 0x7a
add al, ch
stosd dword es:[edi], eax
add byte [eax], al
add byte [edx + 0x42000086], cl
add byte [ebx + 0x7a040cc4], al
xor al, 0x2f
sub al, 0x3e
xor al, 0xd5
sub al, 0x42
xor al, 0x13
sub al, 0x76
xor al, 0xde
add al, 0x5f
xor al, 0x3e
mov byte [esi + section..BsS], al
inc esi
cmp esi, 0x2c00
jb 0x4046d7
je 0x404717
jne 0x404717
jmp 0xcf952f2f
call 0x401670
mov edx, dword [ebp - 0xbc]
test edx, edx
je 0x404755
invalid
mov ecx, dword [ebp - 0xb4]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x40474b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404784
push ecx
push edx
call fcn.004048db
add esp, 8
lea ecx, [ebp - 0xd8]
call fcn.00401900
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.004048f7
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00401990
call fcn.00401980
call fcn.00401990
call fcn.00407a4f
int3