Function at 0x401528
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov eax, dword [0x492240]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, 0x7303c5c3
jmp 0x4011c0
mov esi, 0xd3
rcr edx, 0x6e
imul esi
sub edx, 0x2d
and ebx, 0xe1
sbb edi, 0xcc
rcl ebx, 0x8a
or eax, 0x8d
bswap ebx
bswap edx
mov edx, 0x19
not esi
not esi
inc edi
imul esi
not esi
inc edx
mov ebx, 0xa2
and ebx, 0x21
mov edi, 0x1c
bswap esi
rcr edi, 0xc
sbb ebx, 0
sub esi, 0x2b
or ebx, 0x6b
neg edi
dec eax
imul edi
and edi, 0x1d
neg edi
rcl ebx, 0x8b
dec edi
not esi
inc ebx
rol ebx, 0x81
inc eax
or edx, 0x44
rol esi, 0x32
imul eax
ror esi, 0x80
inc eax
neg esi
add ebx, 0x89
sub esi, 0xc3
rcl ebx, 0x30
neg eax
dec eax
and edi, 0xeb
rcl ebx, 0x81
not esi
imul ebx
sbb eax, 0x6c
inc edi
dec edi
rcl edi, 0x4d
mov esi, 0x96
or edi, 0x97
add eax, 0x1d
imul eax
dec ebx
sub esi, 0x29
rcl ebx, 0x1b
rol edi, 0x51
imul edx
dec edi
rol ebx, 0x18
sbb ebx, 0xf3
neg edx
inc esi
rol ebx, 0x69
dec edi
neg edx
mov edx, 0xf5
neg edi
sub edi, 0x1b
add esi, 0x64
imul ebx
bswap edx
ror edi, 0x4f
dec edi
neg edx
sbb edx, 0x77
inc edx
rol edi, 0x8b
and edi, 0x26
or eax, 0x80
bswap edi
rcr edi, 0x4b
imul eax
and ebx, 0xe6
imul edi
imul edi
ror eax, 0xaf
imul edi
imul edi
rol eax, 0xd2
rcr edx, 0x2a
sub eax, 0x7d
mov edi, 0xf6
add ebx, 0x5b
or esi, 0xcc
dec edx
imul edx
add ebx, 0xd1
rcr ebx, 0x88
not eax
or esi, 0x27
inc esi
add ebx, 0x29
not ebx
sbb ebx, 0xbf
bswap esi
inc edx
rcr edx, 0x79
neg edi
imul ebx
inc edi
not ebx
neg ebx
dec edi
inc edi
inc edx
sub edi, 0x4a
add edx, 0xef
bswap edi
imul ebx
inc eax
imul edi
and ebx, 0x74
neg esi
ror edi, 0x37
sub esi, 0x19
not edx
inc esi
dec ebx
rcr eax, 0xbe
neg eax
inc edi
neg edi
neg esi
or eax, 0x10
and ebx, 0xa2
ror edi, 0xbd
sbb edi, 0xed
inc ebx
rcl eax, 0x27
imul esi
rcr edi, 0x57
bswap ebx
dec eax
mov eax, 0x8e29ff6
nop word cs:[eax + eax]
cmp eax, 0x33bcce39
jle 0x401290
cmp eax, 0x6d5b1658
jg 0x401670
cmp eax, 0x33bcce3a
je 0x401b67
cmp eax, 0x44bdc17a
je 0x40101d
cmp eax, 0x4b8b7ce4
jne 0x4011c0
mov ecx, dword [0x49359c]
lea eax, [ecx + 1]
imul eax, ecx
mov edx, eax
not edx
mov ecx, eax
and eax, 0x6f180841
and ecx, 1
mov esi, edx
and edx, 0x90e7f7be
and esi, 0xfffffffe
or eax, edx
or ecx, esi
mov esi, 0xca0cc6e3
mov edx, eax
xor edx, 0x6f180841
xor eax, 0x90e7f7be
andn edx, ecx, edx
and eax, ecx
not ecx
or eax, edx
not eax
or eax, ecx
cmp eax, 0xffffffff
sete dl
cmp dword [0x493598], 0xa
setl al
mov ecx, eax
or al, dl
xor cl, dl
mov edx, eax
xor cl, 1
or al, cl
xor dl, cl
xor al, 1
or al, dl
mov edx, eax
or al, cl
xor dl, cl
mov ebx, eax
xor bl, dl
test al, 1
mov eax, 0xd59382fb
cmovne eax, esi
test dl, 1
mov edx, 0xd59382fb
cmove eax, esi
test bl, 1
cmove eax, edx
jmp 0x4011c0
cmp eax, 0xda31690e
jg 0x40181a
cmp eax, 0xb44063f5
je 0x401c07
cmp eax, 0xca0cc6e3
je 0x401c11
cmp eax, 0xd59382fb
jne 0x4011c0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
rcr esi, 0x8a
and edx, 0xee
neg esi
bswap eax
neg edx
or edx, 0x2a
rcl edx, 0xe9
inc esi
or eax, 0x3a
rcr esi, 0xc7
rcl esi, 0xdd
or eax, 0xa6
rol edi, 0x34
imul edx
rol ebx, 0x34
not edx
ror edx, 0xb2
bswap ebx
rol edi, 0x4e
sbb edx, 0xc0
inc eax
and eax, 0x5b
rol ebx, 0xa6
inc ebx
neg edx
sub eax, 0x8c
or edi, 0x62
bswap eax
rcl eax, 0x59
dec eax
rcr ebx, 0xb0
sub eax, 0x96
or edi, 0x58
neg eax
dec edx
imul esi
not edx
imul ebx
dec edi
bswap edi
inc ebx
bswap edx
imul edx
add esi, 0x54
or edi, 0x77
bswap ebx
not edx
sub esi, 0xc
ror eax, 0xd3
imul eax
mov ebx, 0xf9
and edi, 0x68
dec eax
sbb esi, 0x2f
neg esi
bswap ebx
bswap ebx
sub ebx, 0xf8
and edx, 0x90
inc edx
or esi, 0x59
inc edx
bswap esi
inc eax
bswap ebx
dec edi
not edx
dec ebx
add edi, 0xb0
add esi, 0x72
inc eax
rcr edi, 0x34
and esi, 0x7f
add edx, 0xc5
not eax
not edi
inc ebx
inc esi
rcl esi, 0x37
or edx, 0x53
ror eax, 0xa1
rol esi, 0x8e
rol edx, 0x9c
ror edi, 0x8c
imul esi
add edi, 0xbc
sub esi, 0xc7
and edi, 0x79
rol eax, 0xe8
dec eax
add edi, 0x57
dec edx
rcr ebx, 0xc4
bswap ebx
not eax
ror ebx, 0x91
sbb esi, 0xf8
rcl edi, 0xf7
sbb eax, 0x7f
not eax
rcr esi, 0x6f
add ebx, 0x13
add eax, 0x20
imul ebx
sbb ebx, 0x1b
add edi, 0x5c
add ebx, 0xdf
imul eax
and eax, 0xfe
dec eax
not esi
sbb esi, 0x32
or esi, 7
imul edi
rol esi, 0xc4
inc ebx
rcr ebx, 0x24
dec eax
dec eax
and edi, 0x99
sbb edi, 5
imul edx
not edx
sbb edi, 0xc3
inc edi
inc eax
bswap eax
ror edi, 0xc9
not edx
dec edi
imul ebx
inc esi
dec edx
bswap edx
sub edi, 0x9c
ror edi, 0x6f
or edi, 0xbe
rol edi, 0x2d
ror edi, 0x47
add eax, 0x57
rcl eax, 0xb7
add edi, 0x49
not esi
sbb eax, 0x12
rol eax, 0xb3
sbb esi, 0x54
inc ebx
sbb edi, 0xa3
or ebx, 0xfa
rcl edi, 8
mov edx, 0xb2
inc eax
and ebx, 0xeb
and edi, 0x72
neg edx
neg edi
sub eax, 0xf4
dec edi
rcr ebx, 0xeb
and edx, 0xa4
bswap edi
imul edi
not esi
not esi
ror ebx, 0x67
rcl ebx, 0xf5
and edi, 0xbf
or eax, 0xc1
ror edi, 0x8c
add eax, 0x71
not ebx
not edx
not edx
rcl ebx, 0xc6
neg esi
bswap esi
inc edx
dec edi
sub eax, 0xd3
bswap edx
rol esi, 0x6b
mov eax, 0x81
not esi
add edi, 0x35
ror edi, 0xeb
ror edx, 0xf1
inc edi
not edi
imul edi
not esi
dec edx
not eax
dec edx
mov edx, 0x36
dec esi
imul edi
not ebx
rol edi, 0x28
rcl eax, 0xd8
or edi, 0xb2
dec edi
ror edx, 0x3c
dec edx
rol edi, 0x6d
imul esi
imul edx
dec esi
or edx, 0xa
dec edi
inc esi
neg edx
add esi, 7
rcr ebx, 0x29
not edi
sbb ebx, 0xb7
not edx
not eax
sbb esi, 0xf1
inc edx
ror eax, 0xb3
rcl esi, 0xe9
ror edi, 0x5d
rol edx, 0x45
bswap ebx
rcr edx, 0x57
inc eax
dec esi
inc esi
neg ebx
sbb edx, 0xe7
neg ebx
add edx, 0xce
inc edi
ror ebx, 0x66
not esi
add edi, 0xa2
dec ebx
sub edx, 0x63
mov edi, 0x82
ror eax, 0x9e
sbb eax, 0x5c
inc esi
and esi, 0xc8
rcr edx, 0x5c
imul eax
or esi, 0x72
neg eax
bswap edi
not esi
add ebx, 0x57
mov edx, dword [ebp - 0x18]
xor ecx, ecx
xor edi, edi
mov ecx, dword [ebp - 0x14]
mov edi, dword [edx]
not byte [edi]
add byte [edi], 0x74
sub byte [edi], 0x62
imul byte [edi]
inc edi
loop 0x40157a
mov ecx, dword [0x49359c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
not ecx
mov esi, eax
or esi, 0x40001
mov edi, eax
and edi, 0x3416c00
mov edx, ecx
or edx, 0x6c0001a4
and esi, 0x6c0401a5
and edx, 0x6c0401a5
or edi, edx
mov edx, ecx
and edx, 0x90ba925a
and ecx, 0x742955cf
or edx, esi
xor edx, edi
mov edi, 0xda31690f
mov esi, edx
not esi
and edx, 0xf623d500
and esi, 0x9dc2aff
or edx, esi
mov esi, eax
and esi, 0x8bd6aa30
and eax, 1
or esi, ecx
xor edx, 0xf566b900
xor esi, 0x742955ce
or eax, esi
mov esi, 0xca0cc6e3
not eax
or eax, edx
mov ecx, eax
not ecx
and eax, 0x47081361
mov edx, ecx
and edx, 0x100014
and ecx, 0xb8e7ec8a
or eax, edx
xor eax, 0x47081361
or ecx, eax
sete al
cmp dword [0x493598], 0xa
mov ecx, eax
setge ah
setl dl
xor ah, al
and cl, ah
not ah
and ah, al
xor al, dl
and al, dl
or al, ah
xor al, cl
mov edx, eax
xor dl, 1
and cl, dl
xor dl, cl
mov edx, 0xda31690f
cmovne edx, esi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x4011c0
cmp eax, 0x6d5b1659
je 0x401ee6
cmp eax, 0x75d9e1fb
je 0x401fa0
cmp eax, 0x7303c5c3
jne 0x4011c0
mov eax, dword [0x49359c]
lea ecx, [eax + 1]
imul ecx, eax
mov esi, ecx
not esi
and ecx, 0x5001e0c9
and esi, 0xaffe1f36
or esi, ecx
mov edx, esi
mov edi, esi
xor edx, 0x500140c0
xor edi, 0xaffe1f36
xor esi, 0x8008
mov eax, edi
and eax, 0x21dcb739
and edx, 0xde2348c6
or edi, 0x5ab350a7
and esi, 0x81488b08
or edx, eax
mov eax, edx
mov ebx, edx
xor eax, 0xde2348c6
xor ebx, 0x7b6fe79e
xor edx, 0x1c81508
and ebx, eax
mov dword [ebp - 0x1c], eax
and edx, 0xddeb5dcc
mov eax, ebx
not eax
and ebx, 0x81d8dbaa
mov ecx, eax
or eax, edi
and ecx, 0x7e272455
and edi, 0x7e272455
or ebx, ecx
or esi, edi
not eax
xor esi, ebx
mov ebx, dword [ebp - 0x1c]
or eax, esi
mov ecx, eax
not ecx
and eax, 0x7218a2d7
and ecx, 0x8de75d28
or eax, ecx
mov edi, ebx
and edi, 0x2214a233
and ebx, 1
mov esi, eax
xor esi, 0x20294020
xor eax, 0xd7540d8e
or edi, edx
and esi, 0xb27d4020
mov ecx, edi
xor ecx, 0xddeb5dcd
xor edi, 0x22140020
or ebx, ecx
mov ecx, eax
and ecx, 0x4d82bfdf
and edi, 0xb27d4020
or eax, ebx
and ebx, 0x4d82bfdf
or esi, ecx
or edi, ebx
not eax
xor edi, esi
or eax, edi
mov edi, 0x75d9e1fb
mov edx, eax
not edx
mov esi, eax
andn ecx, eax, eax
and esi, 0x22d9c0c3
and edx, 0xdd263f3c
or edx, esi
mov esi, ecx
not esi
and ecx, 0xdd263f3c
or eax, esi
and esi, 0x22d9c0c3
or ecx, esi
not eax
mov esi, 0x33bcce3a
xor ecx, edx
or eax, ecx
setne ah
sete ch
cmp dword [0x493598], 0xa
setl al
setge dl
mov cl, al
and ah, al
and dl, ch
or al, ch
xor cl, ch
or dl, ah
and cl, al
xor al, 1
or al, dl
mov ch, cl
mov ah, al
xor ch, al
and al, cl
and ch, cl
not ah
xor cl, 1
and cl, ah
or al, cl
mov cl, al
xor cl, ch
test al, al
mov eax, 0x75d9e1fb
cmovne eax, esi
test ch, ch
cmove eax, edi
test cl, 1
cmovne eax, esi
jmp 0x4011c0
cmp eax, 0xda31690f
je 0x401fb0
cmp eax, 0x8e29ff6
jne 0x401fba
mov esi, 0xd3
rcr edx, 0x6e
imul esi
sub edx, 0x2d
and ebx, 0xe1
sbb edi, 0xcc
rcl ebx, 0x8a
or eax, 0x8d
bswap ebx
bswap edx
mov edx, 0x19
not esi
not esi
inc edi
imul esi
not esi
inc edx
mov ebx, 0xa2
and ebx, 0x21
mov edi, 0x1c
bswap esi
rcr edi, 0xc
sbb ebx, 0
sub esi, 0x2b
or ebx, 0x6b
neg edi
dec eax
imul edi
and edi, 0x1d
neg edi
rcl ebx, 0x8b
dec edi
not esi
inc ebx
rol ebx, 0x81
inc eax
or edx, 0x44
rol esi, 0x32
imul eax
ror esi, 0x80
inc eax
neg esi
add ebx, 0x89
sub esi, 0xc3
rcl ebx, 0x30
neg eax
dec eax
and edi, 0xeb
rcl ebx, 0x81
not esi
imul ebx
sbb eax, 0x6c
inc edi
dec edi
rcl edi, 0x4d
mov esi, 0x96
or edi, 0x97
add eax, 0x1d
imul eax
dec ebx
sub esi, 0x29
rcl ebx, 0x1b
rol edi, 0x51
imul edx
dec edi
rol ebx, 0x18
sbb ebx, 0xf3
neg edx
inc esi
rol ebx, 0x69
dec edi
neg edx
mov edx, 0xf5
neg edi
sub edi, 0x1b
add esi, 0x64
imul ebx
bswap edx
ror edi, 0x4f
dec edi
neg edx
sbb edx, 0x77
inc edx
rol edi, 0x8b
and edi, 0x26
or eax, 0x80
bswap edi
rcr edi, 0x4b
imul eax
and ebx, 0xe6
imul edi
imul edi
ror eax, 0xaf
imul edi
imul edi
rol eax, 0xd2
rcr edx, 0x2a
sub eax, 0x7d
mov edi, 0xf6
add ebx, 0x5b
or esi, 0xcc
dec edx
imul edx
add ebx, 0xd1
rcr ebx, 0x88
not eax
or esi, 0x27
inc esi
add ebx, 0x29
not ebx
sbb ebx, 0xbf
bswap esi
inc edx
rcr edx, 0x79
neg edi
imul ebx
inc edi
not ebx
neg ebx
dec edi
inc edi
inc edx
sub edi, 0x4a
add edx, 0xef
bswap edi
imul ebx
inc eax
imul edi
and ebx, 0x74
neg esi
ror edi, 0x37
sub esi, 0x19
not edx
inc esi
dec ebx
rcr eax, 0xbe
neg eax
inc edi
neg edi
neg esi
or eax, 0x10
and ebx, 0xa2
ror edi, 0xbd
sbb edi, 0xed
inc ebx
rcl eax, 0x27
imul esi
rcr edi, 0x57
bswap ebx
dec eax
mov eax, dword [0x49359c]
lea edx, [eax + 1]
imul edx, eax
mov ecx, edx
not ecx
and edx, 0x72f07b05
and ecx, 0x8d0f84fa
or ecx, edx
mov eax, ecx
xor ecx, 0x103000a
xor eax, 0x72f07b05
mov edi, eax
and ecx, 0x1f31b0f
and edi, 0xfe0ce4f0
and eax, 0xbc6ef2b5
or edi, ecx
mov ecx, edi
xor ecx, 0xfe0ce4f0
xor edi, 0x12080d
mov edx, ecx
and edx, 0x43910d4a
and edi, 0x581e6c8d
or eax, edx
mov edx, eax
not edx
and eax, 0x41528e53
and edx, 0xbead71ac
or eax, edx
mov edx, ecx
and edx, 0xa7e19372
and ecx, 1
or edx, edi
mov esi, eax
xor esi, 0x438008
xor eax, 0xfd3c7ce7
mov edi, edx
xor edi, 0x581e6c8c
xor edx, 0x25618060
and esi, 0x656f8cec
or ecx, edi
mov edi, eax
and edi, 0x9a907313
and edx, 0x656f8cec
or eax, ecx
and ecx, 0x9a907313
or esi, edi
mov edi, 0xfc6a7a38
or edx, ecx
not eax
xor edx, esi
or eax, edx
mov ecx, eax
andn edx, eax, eax
not eax
and ecx, 0xa7290672
and eax, 0x58d6f98d
or ecx, eax
mov eax, ecx
xor eax, 0x4210200
xor ecx, 0x58d6f98d
mov esi, ecx
and esi, 0xb30e947a
and eax, 0x4cf16b85
or eax, esi
mov esi, edx
not esi
and edx, 0x4cf16b85
or ecx, esi
and esi, 0xb30e947a
or edx, esi
not ecx
mov esi, 0x44bdc17a
xor edx, eax
or ecx, edx
mov eax, ecx
not eax
and ecx, 0x37c2b9cd
and eax, 0xc83d4632
or eax, ecx
mov ecx, eax
xor ecx, 0x11c02044
xor eax, 0x48110220
and eax, 0x6e139ba9
and ecx, 0x91ec6456
or ecx, eax
xor ecx, 0x91ec6456
sete ah
setne dh
cmp dword [0x493598], 0xa
setge dl
setl ch
mov cl, dl
mov al, dl
or dl, dh
xor cl, dh
and dh, ch
and al, ah
xor ch, ah
xor dl, 1
or al, dh
or dl, ch
xor al, 1
mov ah, al
or al, dl
xor ah, dl
xor al, 1
mov edx, ecx
or al, ah
xor al, 1
xor dl, al
or al, cl
xor al, 1
or al, dl
mov ecx, eax
xor cl, dl
test cl, 1
cmovne edi, esi
test al, 1
mov eax, 0xfc6a7a38
cmovne eax, edi
test dl, 1
cmove eax, edi
jmp 0x4011c0
push eax
mov ecx, dword [0x49359c]
mov eax, esp
mov dword [ebp - 0x18], eax
mov esi, 0x75d9e1fb
mov edi, 0xb44063f5
lea eax, [ecx + 1]
imul eax, ecx
mov edx, eax
not edx
mov ecx, eax
and ecx, 0x9ee5066
and edx, 0xf611af99
or ecx, edx
mov edx, ecx
not edx
and ecx, 0x476dc9d2
and edx, 0xb892362d
or ecx, edx
mov edx, ecx
xor edx, 0xb17c664a
xor ecx, 0x4e8399b5
and edx, eax
andn eax, eax, ecx
or edx, eax
xor ecx, edx
test ecx, edx
sete cl
cmp dword [0x493598], 0xa
setl dl
mov eax, edx
or dl, cl
xor al, cl
xor dl, 1
or dl, al
xor al, 1
mov ecx, edx
or cl, al
xor al, dl
mov edx, ecx
xor dl, al
mov edx, 0xb44063f5
cmovne edx, esi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmovne eax, edx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x14], edx
jmp 0x4011c0
mov eax, 0x4b8b7ce4
jmp 0x4011c0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
rcr esi, 0x8a
and edx, 0xee
neg esi
bswap eax
neg edx
or edx, 0x2a
rcl edx, 0xe9
inc esi
or eax, 0x3a
rcr esi, 0xc7
rcl esi, 0xdd
or eax, 0xa6
rol edi, 0x34
imul edx
rol ebx, 0x34
not edx
ror edx, 0xb2
bswap ebx
rol edi, 0x4e
sbb edx, 0xc0
inc eax
and eax, 0x5b
rol ebx, 0xa6
inc ebx
neg edx
sub eax, 0x8c
or edi, 0x62
bswap eax
rcl eax, 0x59
dec eax
rcr ebx, 0xb0
sub eax, 0x96
or edi, 0x58
neg eax
dec edx
imul esi
not edx
imul ebx
dec edi
bswap edi
inc ebx
bswap edx
imul edx
add esi, 0x54
or edi, 0x77
bswap ebx
not edx
sub esi, 0xc
ror eax, 0xd3
imul eax
mov ebx, 0xf9
and edi, 0x68
dec eax
sbb esi, 0x2f
neg esi
bswap ebx
bswap ebx
sub ebx, 0xf8
and edx, 0x90
inc edx
or esi, 0x59
inc edx
bswap esi
inc eax
bswap ebx
dec edi
not edx
dec ebx
add edi, 0xb0
add esi, 0x72
inc eax
rcr edi, 0x34
and esi, 0x7f
add edx, 0xc5
not eax
not edi
inc ebx
inc esi
rcl esi, 0x37
or edx, 0x53
ror eax, 0xa1
rol esi, 0x8e
rol edx, 0x9c
ror edi, 0x8c
imul esi
add edi, 0xbc
sub esi, 0xc7
and edi, 0x79
rol eax, 0xe8
dec eax
add edi, 0x57
dec edx
rcr ebx, 0xc4
bswap ebx
not eax
ror ebx, 0x91
sbb esi, 0xf8
rcl edi, 0xf7
sbb eax, 0x7f
not eax
rcr esi, 0x6f
add ebx, 0x13
add eax, 0x20
imul ebx
sbb ebx, 0x1b
add edi, 0x5c
add ebx, 0xdf
imul eax
and eax, 0xfe
dec eax
not esi
sbb esi, 0x32
or esi, 7
imul edi
rol esi, 0xc4
inc ebx
rcr ebx, 0x24
dec eax
dec eax
and edi, 0x99
sbb edi, 5
imul edx
not edx
sbb edi, 0xc3
inc edi
inc eax
bswap eax
ror edi, 0xc9
not edx
dec edi
imul ebx
inc esi
dec edx
bswap edx
sub edi, 0x9c
ror edi, 0x6f
or edi, 0xbe
rol edi, 0x2d
ror edi, 0x47
add eax, 0x57
rcl eax, 0xb7
add edi, 0x49
not esi
sbb eax, 0x12
rol eax, 0xb3
sbb esi, 0x54
inc ebx
sbb edi, 0xa3
or ebx, 0xfa
rcl edi, 8
mov edx, 0xb2
inc eax
and ebx, 0xeb
and edi, 0x72
neg edx
neg edi
sub eax, 0xf4
dec edi
rcr ebx, 0xeb
and edx, 0xa4
bswap edi
imul edi
not esi
not esi
ror ebx, 0x67
rcl ebx, 0xf5
and edi, 0xbf
or eax, 0xc1
ror edi, 0x8c
add eax, 0x71
not ebx
not edx
not edx
rcl ebx, 0xc6
neg esi
bswap esi
inc edx
dec edi
sub eax, 0xd3
bswap edx
rol esi, 0x6b
mov eax, 0x81
not esi
add edi, 0x35
ror edi, 0xeb
ror edx, 0xf1
inc edi
not edi
imul edi
not esi
dec edx
not eax
dec edx
mov edx, 0x36
dec esi
imul edi
not ebx
rol edi, 0x28
rcl eax, 0xd8
or edi, 0xb2
dec edi
ror edx, 0x3c
dec edx
rol edi, 0x6d
imul esi
imul edx
dec esi
or edx, 0xa
dec edi
inc esi
neg edx
add esi, 7
rcr ebx, 0x29
not edi
sbb ebx, 0xb7
not edx
not eax
sbb esi, 0xf1
inc edx
ror eax, 0xb3
rcl esi, 0xe9
ror edi, 0x5d
rol edx, 0x45
bswap ebx
rcr edx, 0x57
inc eax
dec esi
inc esi
neg ebx
sbb edx, 0xe7
neg ebx
add edx, 0xce
inc edi
ror ebx, 0x66
not esi
add edi, 0xa2
dec ebx
sub edx, 0x63
mov edi, 0x82
ror eax, 0x9e
sbb eax, 0x5c
inc esi
and esi, 0xc8
rcr edx, 0x5c
imul eax
or esi, 0x72
neg eax
bswap edi
not esi
add ebx, 0x57
mov edx, dword [ebp - 0x18]
xor ecx, ecx
xor edi, edi
mov ecx, dword [ebp - 0x14]
mov edi, dword [edx]
not byte [edi]
add byte [edi], 0x74
sub byte [edi], 0x62
imul byte [edi]
inc edi
loop 0x401ecf
mov eax, 0xd59382fb
jmp 0x4011c0
mov eax, dword [0x49359c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
mov edx, ecx
xor edx, 0x96dec23b
not eax
mov esi, eax
and edx, ecx
and esi, 0x96dec23b
and ecx, 0x14c61670
and eax, 0xeb39e98f
or edx, esi
or eax, ecx
mov esi, edx
not esi
and edx, 0x96dec23a
and esi, 0x69213dc5
or edx, esi
mov esi, edx
not esi
and edx, 0xeb39e98f
mov edi, esi
and edi, 0x14c61670
or edx, edi
xor eax, edx
xor esi, eax
test esi, eax
mov esi, 0x44bdc17a
setne ch
sete ah
cmp dword [0x493598], 0xa
mov dh, ch
setge dl
setl al
mov cl, dl
or dh, al
and ch, al
and dl, ah
or al, ah
or cl, ah
or dl, ch
xor al, 1
mov ebx, ecx
or cl, dh
or al, dl
xor bl, dh
xor cl, 1
or cl, bl
xor al, cl
and cl, al
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x8e29ff6
cmovne eax, esi
test cl, cl
mov ecx, 0x8e29ff6
cmove eax, esi
test dl, 1
cmove eax, ecx
jmp 0x4011c0
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, 0x33bcce3a
jmp 0x4011c0
mov eax, 0x6d5b1659
jmp 0x4011c0
cmp eax, 0xfc6a7a38
jne 0x4011c0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00432940
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret