Function at 0x41710e
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x80]
jmp 0x4132a0
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x413582
cmp byte [esp + 0x74], 0
je 0x413582
cmp edx, 0xffffffff
je 0x413582
cmp edx, esi
jg 0x413582
push dword [esp + 0x88]
mov eax, dword [esp + 0x94]
push dword [esp + 0x88]
or eax, dword [esp + 0xa0]
push eax
push edx
mov edx, dword [esp + 0x8c]
push esi
push dword [esp + 0x78]
call fcn.00414140
add esp, 0x18
mov dword [esp + 0x8c], eax
test eax, eax
jle 0x413574
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x80]
mov edx, dword [ecx + 4]
mov dword [esp + 0x90], 0
mov edi, dword [ecx]
cmp edi, dword [ecx + 4]
je 0x447230
mov dword [esp + 0x10], edx
mov ecx, eax
mov dword [esp + 0x44], ecx
test ecx, ecx
je 0x413582
cmp ecx, 2
jge 0x41356a
xor edi, edi
cmp edi, ecx
jae 0x4132a0
mov esi, dword [esp + 0x24]
lea ecx, [edi*8]
mov dword [esp + 0x4c], ecx
cmp edi, eax
jge 0x44728d
mov eax, dword [esp + 0x64]
mov dword [esp + 0x40], eax
test edi, edi
js 0x41360a
mov eax, dword [esp + 0x84]
add eax, ecx
mov ecx, dword [0x4a574c]
mov dword [esp + 0x9c], eax
mov esi, dword [eax + 4]
sub esi, dword [eax]
lea eax, [esi*2 + 2]
push eax
cmp ecx, 0x416495
jne 0x4472a3
call fcn.0042594c
mov ecx, eax
mov dword [esp + 0x4c], ecx
add esp, 4
test ecx, ecx
je 0x413600
mov edx, dword [esp + 0x40]
lea eax, [esi + esi]
push eax
mov eax, dword [esp + 0xa0]
mov eax, dword [eax]
lea eax, [edx + eax*2]
push eax
push ecx
call fcn.00421080
mov eax, dword [esp + 0x54]
xor ecx, ecx
add esp, 0xc
mov dword [esp + 0x14], eax
mov word [eax + esi*2], cx
test esi, esi
je 0x4472b9
cmp esi, 0xffffffff
je 0x4472b9
test eax, eax
je 0x4472b9
mov eax, dword [ebx]
cmp eax, 1
jle 0x4135ca
dec eax
push 4
mov dword [ebx], eax
call fcn.00420ff6
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x413614
mov dword [ebx], 1
lea eax, [esi + 1]
mov dword [esp + 0x38], ebx
test eax, eax
je 0x41361b
add eax, 7
and eax, 0xfffffff8
xor ecx, ecx
mov dword [esp + 0x34], eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00420ff6
add esp, 4
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], esi
add esi, esi
push esi
push dword [esp + 0x18]
push eax
call fcn.00421080
mov eax, dword [esp + 0x38]
add esp, 0xc
xor ecx, ecx
mov word [esi + eax], cx
mov eax, dword [0x4a5748]
push dword [esp + 0x14]
cmp eax, 0x41614f
jne 0x413625
call fcn.00422f95
mov esi, dword [esp + 0x28]
add esp, 4
mov eax, dword [esp + 0x3c]
cmp esi, eax
je 0x413503
push 0x10
call fcn.00420ff6
add esp, 4
test eax, eax
je 0x41362c
mov ecx, dword [esp + 0x2c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
inc dword [ebx]
mov ecx, dword [esp + 0x20]
inc edi
mov dword [ecx + esi*4], eax
inc esi
mov ecx, dword [esp + 0x4c]
add ecx, 8
mov dword [esp + 0x24], esi
mov dword [esp + 0x4c], ecx
cmp edi, dword [esp + 0x44]
jae 0x41328a
mov eax, dword [esp + 0x8c]
jmp 0x413364
add eax, eax
mov dword [esp + 0x3c], eax
cmp eax, 8
jb 0x4135e1
xor ecx, ecx
mov dword [esp + 0x28], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00420ff6
mov edx, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x40], eax
test edx, edx
je 0x413561
test esi, esi
je 0x413561
lea ecx, [esi*4]
push ecx
push edx
push eax
call fcn.00421080
add esp, 0xc
push dword [esp + 0x20]
call fcn.0042106c
mov eax, dword [esp + 0x44]
add esp, 4
mov dword [esp + 0x20], eax
jmp 0x4134aa
mov edi, 1
jmp 0x41334d
cmp dword [esp + 0x90], 0
jne 0x44724c
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4472cf
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x1c]
push eax
call fcn.00409890
lea ecx, [esp + 0x1c]
call fcn.00404024
lea ecx, [esp + 0x2c]
call fcn.00405a64
lea ecx, [esp + 0x64]
call fcn.00415c2e
lea ecx, [esp + 0x64]
call fcn.00405a64
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
push esi
lea ecx, [esp + 0x30]
call fcn.00408087
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
jmp 0x413464
mov eax, 8
mov dword [esp + 0x3c], eax
jmp 0x413512
mov esi, 0xfffffffa
jmp 0x4472b0
mov esi, 0xfffffff9
jmp 0x4472b0
xor ebx, ebx
jmp 0x41342e
mov eax, 8
jmp 0x413443
call eax
jmp 0x41349b
xor eax, eax
jmp 0x4134d5
inc ebp
xchg esp, eax
add byte [eax], al
add dword [eax], eax
push ebp
mov ebp, esp
sub esp, 0x184
mov eax, edx
mov dword [ebp - 0x120], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0x140], eax
push ebx
mov edx, dword [eax]
mov eax, ecx
shr eax, 0xb
and eax, 1
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x3c], eax
mov eax, ecx
shr eax, 9
push esi
mov esi, dword [ebp + 8]
and eax, 1
mov dword [ebp - 0xdc], eax
xor eax, 1
push edi
xor edi, edi
mov dword [ebp - 0xe8], eax
mov esi, dword [esi]
mov ebx, edi
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x2c], eax
movsx eax, cl
and eax, dword [ebp - 0xc]
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x84], edi
mov dword [ebp - 8], edx
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x98], edi
mov dword [ebp - 4], esi
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0xb4], 0xff
mov dword [ebp - 0x12c], 0xfc00
mov dword [ebp - 0x148], 0xdc00
mov dword [ebp - 0x158], 0x2b
mov dword [ebp - 0x128], 0x7b
mov dword [ebp - 0xe4], 0x30
mov dword [ebp - 0x118], 0x29
mov dword [ebp - 0x90], 0x39
mov dword [ebp - 0x110], 0x3c
mov dword [ebp - 0x144], 0x52
mov dword [ebp - 0xe0], 0x27
mov dword [ebp - 0x154], 0x2d
mov dword [ebp - 0x100], 0x10
mov dword [ebp - 0x114], 0x17
mov dword [ebp - 0x14c], 0x20
mov dword [ebp - 0x104], 0x1d
mov dword [ebp - 0x134], 0x1e
mov dword [ebp - 0x10c], 0x1f
mov dword [ebp - 0x13c], 0x6e
mov dword [ebp - 0x11c], 0x6f
mov dword [ebp - 0x150], 0x70
mov dword [ebp - 0x124], 0x71
mov dword [ebp - 0xfc], 0x73
mov dword [ebp - 0x108], 0xf
movzx edi, word [esi]
mov dword [ebp - 0x18], edi
test edi, edi
je 0x417c27
mov eax, dword [ebp + 0x28]
mov ecx, dword [eax + 0x3c]
mov eax, dword [eax + 0x10]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [ebp + 0x2c], 0
je 0x417328
cmp edx, eax
ja 0x4546a9
mov eax, dword [ebp - 0xa8]
cmp edx, eax
jb 0x41824a
mov ecx, edx
sub ecx, eax
mov eax, dword [ebp + 0x2c]
sar ecx, 1
mov edx, dword [eax]
mov eax, 0x7fffffeb
sub eax, edx
cmp eax, ecx
jl 0x454601
lea eax, [edx + ecx]
mov ecx, dword [ebp + 0x2c]
mov dword [ecx], eax
test ebx, ebx
je 0x417336
mov ecx, dword [ebp - 0xb0]
cmp ebx, ecx
ja 0x4175b7
mov edx, dword [ebp - 8]
jmp 0x41733f
mov ecx, dword [ebp + 0x28]
cmp dword [ecx + 0x20], eax
ja 0x4546a9
jmp 0x417348
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 8], edx
mov ecx, dword [ebp + 0x28]
mov dword [ebp - 0xa8], edx
cmp dword [ebp - 0x30], 0
jne 0x451c19
mov edx, dword [ebp - 0x34]
mov ebx, edx
and ebx, 8
mov dword [ebp - 0x68], ebx
jne 0x418254
push 0x2a
pop eax
cmp edi, eax
je 0x41787d
push 0x2b
pop eax
cmp edi, eax
je 0x41787d
push 0x3f
pop eax
cmp edi, eax
je 0x41787d
push 0x7b
pop eax
cmp edi, eax
je 0x451d89
xor eax, eax
cmp dword [ebp - 0x78], eax
mov ecx, eax
mov eax, dword [ebp - 0x60]
jne 0x451da1
test edx, 0x4000
jne 0x451de2
mov edx, dword [ebp - 8]
push 0x3f
pop eax
cmp edi, eax
ja 0x41752b
je 0x417afd
mov eax, edi
xor ecx, ecx
sub eax, ecx
je 0x41755b
sub eax, 0x24
je 0x4528e3
sub eax, 4
je 0x4178eb
dec eax
je 0x41755b
dec eax
je 0x417c58
dec eax
je 0x41825e
sub eax, 3
je 0x417fe9
cmp dword [ebp - 0x3c], 0
mov edx, dword [ebp - 0xc]
mov ebx, edx
mov word [ebp - 0xf8], di
je 0x417421
mov eax, edi
mov ecx, 0xfc00
and eax, ecx
cmp eax, 0xd800
je 0x4533d8
push 2
pop esi
cmp dword [ebp - 0x3c], 0
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x34]
je 0x417481
test dl, al
je 0x417481
movzx ecx, di
mov edx, 0xfc00
mov eax, ecx
and eax, edx
mov edx, 0xd800
cmp eax, edx
je 0x45441e
mov eax, ecx
mov ecx, 0x80
cdq
idiv ecx
movzx eax, byte [eax + 0x4b3b40]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4a5840]
movzx eax, byte [eax*8 + 0x4a2f53]
test eax, eax
jne 0x417f71
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xc]
test cl, al
mov edi, dword [ebp - 8]
push 0
pop eax
setne al
push 0x1d
pop ecx
add eax, ecx
mov word [edi], ax
add edi, esi
mov dword [ebp - 8], edi
test ebx, ebx
je 0x4174ba
mov ecx, ebx
lea esi, [ebp - 0xf8]
shr ecx, 1
rep movsd dword es:[edi], dword [esi]
adc ecx, ecx
rep movsw word es:[edi], word [esi]
mov edi, dword [ebp - 8]
lea edi, [edi + ebx*2]
mov dword [ebp - 8], edi
mov eax, dword [ebp - 0x18]
push 0xd
pop ecx
cmp ax, cx
je 0x45444a
push 0xa
pop ecx
cmp ax, cx
je 0x45444a
mov ecx, dword [ebp + 0x28]
mov edx, dword [ebp - 0x2c]
cmp edx, 0xfffffffe
je 0x41783d
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x58], eax
cmp ebx, dword [ebp - 0xc]
jne 0x454485
movzx eax, word [edi - 2]
mov dword [ebp - 0x5c], eax
mov eax, dword [ecx + 0x68]
or eax, dword [ebp - 0x8c]
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp - 0x10]
pop ebp
invalid
mov esi, dword [ebp - 4]
mov edx, dword [ebp - 8]
push 2
pop eax
add esi, eax
mov dword [ebp - 4], esi
jmp 0x4172b4
mov eax, edi
sub eax, 0x5b
je 0x4175ee
dec eax
je 0x417888
dec eax
je 0x4533ba
dec eax
je 0x453393
sub eax, 0x1d
je 0x4528f7
dec eax
jne 0x4173fb
test dword [eax - 0x74000002], esp
inc ebp
adc byte [ebx + 0x5d8b9c4d], cl
sub al, 0x89
or byte [ebx + 0x4d8b1445], cl
aam 0x89
or byte [ebx + 0x4d8b1845], cl
movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x64]
mov ebx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp - 0x2c]
mov dword [eax], ecx
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 0x54]
mov dword [eax], ecx
mov eax, dword [ebp - 0x140]
mov dword [eax], edx
mov eax, dword [ebp + 8]
mov dword [eax], esi
test ebx, ebx
je 0x4175ad
sub edx, dword [ebp - 0xa8]
mov ecx, 0x7fffffeb
mov eax, dword [ebx]
sub ecx, eax
sar edx, 1
cmp ecx, edx
jl 0x454601
lea ecx, [eax + edx]
mov dword [ebx], ecx
mov eax, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 8]
sub eax, ebx
and eax, 0xfffffffe
push eax
push ebx
push ecx
call fcn.00428020
sub ebx, dword [ebp - 0xb0]
add esp, 0xc
mov edx, dword [ebp - 8]
mov esi, dword [ebp - 4]
sar ebx, 1
neg ebx
lea edx, [edx + ebx*2]
mov ebx, dword [ebp - 0xb0]
mov dword [ebp - 8], edx
mov dword [ebp - 0x10], ebx
jmp 0x41733f
lea edi, [esi + 2]
mov edx, 0x48fbb8
push 6
mov ecx, edi
call fcn.00418395
pop ecx
test eax, eax
je 0x453c31
push 6
mov edx, 0x48fbb0
mov ecx, edi
call fcn.00418395
pop ecx
test eax, eax
je 0x453c3e
mov eax, dword [ebp - 8]
push 0x3a
mov dword [ebp - 0x10], eax
movzx eax, word [edi]
pop ebx
cmp ax, bx
je 0x453c4b
push 0x2e
pop ecx
cmp ax, cx
je 0x453c4b
push 0x3d
pop ecx
cmp ax, cx
je 0x453c4b
xor eax, eax
push 2
mov dword [ebp - 0x24], eax
pop edi
push 0x5c
pop ecx
push 0x45
pop edx
add esi, edi
mov dword [ebp - 4], esi
movzx ebx, word [esi]
mov dword [ebp - 0x18], ebx
cmp ebx, ecx
je 0x4181b3
test eax, eax
jne 0x41767a
cmp ebx, 0x5e
je 0x453c79
push 0x5d
pop ecx
cmp ebx, ecx
je 0x453c84
mov edi, dword [ebp - 8]
xor edx, edx
push 0x20
pop eax
push eax
add edi, 6
mov dword [ebp - 0x28], edx
push edx
lea eax, [ebp - 0xd4]
mov dword [ebp - 0x68], edx
push eax
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x38], edx
call fcn.00423020
mov esi, dword [ebp - 4]
add esp, 0xc
test ebx, ebx
je 0x454329
cmp dword [ebp - 0x3c], 0
je 0x4176e0
mov eax, ebx
mov ecx, 0xfc00
and eax, ecx
mov edx, 0xd800
cmp eax, edx
je 0x453cc9
mov edx, dword [ebp + 0x2c]
test edx, edx
je 0x4176f2
mov ecx, dword [ebp - 0x80]
cmp edi, ecx
ja 0x453d00
cmp dword [ebp - 0x30], 0
jne 0x453d19
cmp ebx, 0x5b
je 0x453d40
push 0x5c
pop eax
cmp ebx, eax
je 0x4181df
mov edx, dword [ebp + 0xc]
xor ecx, ecx
push 0x5c
pop edi
cmp word [esi + 2], di
je 0x4182d0
push 0xd
pop eax
mov ecx, esi
cmp ebx, eax
je 0x4541cb
push 0xa
pop eax
cmp ebx, eax
je 0x4541cb
mov edi, dword [ebp - 0x30]
test edi, edi
jne 0x41774e
push 0x2d
pop eax
cmp word [esi + 2], ax
je 0x417ecd
mov eax, dword [ebp - 0x58]
push 2
pop ecx
cmp eax, ecx
jl 0x417834
cmp dword [ebp - 0x30], 0
jne 0x41776d
mov edx, dword [ebp - 0xc]
cmp eax, edx
je 0x417aeb
push ebx
push ebx
push dword [ebp + 0x28]
push dword [ebp - 0x34]
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0xd4]
call fcn.00418305
add esp, 0x10
add dword [ebp - 0x20], eax
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 4]
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
push 2
pop ebx
add esi, ebx
mov dword [ebp - 4], esi
movzx ebx, word [esi]
mov dword [ebp - 0x18], ebx
test ebx, ebx
je 0x454305
cmp ebx, 0x5d
jne 0x4176c4
test eax, eax
jne 0x4176c4
mov esi, dword [ebp - 0x80]
mov eax, dword [ebp - 0xc]
cmp edi, esi
ja 0x4177cc
mov eax, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x2c]
cmp ebx, 0xfffffffe
je 0x417f9b
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x6c], ebx
mov ebx, dword [ebp - 0x5c]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x58], ebx
test eax, eax
jne 0x45449a
mov ebx, dword [ebp + 0x2c]
test ebx, ebx
je 0x417805
sub edi, esi
sar edi, 1
add dword [ebx], edi
mov ecx, dword [ebp - 0x24]
xor eax, eax
mov edi, dword [ebp - 8]
cmp ecx, edx
push 0x6e
pop edx
setne al
add eax, edx
push 2
pop edx
mov word [edi], ax
add edi, edx
test ebx, ebx
je 0x417c37
push 0x20
pop eax
add edi, eax
mov dword [ebp - 8], edi
jmp 0x417515
inc eax
mov dword [ebp - 0x58], eax
jmp 0x41775c
mov edx, dword [ebp - 0x5c]
or dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x28], edx
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x58], edx
mov edx, dword [ebp - 0xc]
cmp ebx, edx
jne 0x454459
movzx eax, ax
cmp ebx, edx
mov edx, dword [ebp - 8]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x2c], eax
jne 0x454473
mov esi, dword [ebp - 4]
mov ebx, dword [ebp - 0x10]
jmp 0x41751e
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x60]
jmp 0x41739f
xor ebx, ebx
mov dword [ebp - 0x70], esi
mov esi, dword [ebp + 0x28]
lea edx, [ebp - 0x94]
push ebx
push dword [ebp - 0x34]
lea ecx, [ebp - 4]
push dword [esi + 0x40]
push dword [ebp + 0xc]
call fcn.004183c4
mov edx, dword [ebp + 0xc]
add esp, 0x10
mov edi, eax
cmp dword [edx], ebx
jne 0x4182fd
test edi, edi
jne 0x418034
cmp dword [ebp - 0x94], 0xffff
ja 0x453406
mov di, word [ebp - 0x94]
mov edx, dword [ebp - 0xc]
mov word [ebp - 0xf8], di
mov ebx, edx
mov dword [ebp - 0x18], edi
jmp 0x417421
push 2
pop ebx
add esi, ebx
push 0x3f
mov dword [ebp - 4], esi
pop eax
movzx edx, word [esi]
cmp dx, ax
je 0x417c62
push 0x2a
pop eax
cmp dx, ax
je 0x451e82
mov ebx, dword [ebp + 0x28]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], ecx
push 0x3f
mov ecx, dword [ebx + 0x20]
sub ecx, dword [ebx + 0x10]
sar ecx, 1
mov dword [ebp - 0x88], ecx
xor ecx, ecx
pop edi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x1c], 0x85
mov dword [ebp - 0x38], ecx
cmp dx, di
je 0x417c74
test eax, 0x1000
jne 0x418270
mov edx, dword [ebp - 8]
inc dword [ebx + 0x40]
mov ax, word [ebx + 0x40]
mov word [edx + 4], ax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x20], eax
mov esi, dword [ebp - 4]
mov ebx, dword [ebp - 0x1c]
push 0x52
pop edi
mov eax, dword [ebp + 0x28]
inc dword [eax + 0x58]
cmp dword [eax + 0x58], 0xfa
jg 0x4182f3
lea eax, [ebx - 0x7d]
xor ecx, ecx
cmp eax, 3
mov eax, dword [ebp + 0x28]
jbe 0x453678
mov dword [ebp - 0x10], edx
mov word [edx], bx
mov edi, dword [eax + 0x68]
mov esi, dword [eax + 0x40]
mov eax, dword [ebp + 0x2c]
neg eax
mov dword [ebp - 0x84], ecx
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x44], edx
sbb eax, eax
mov dword [ebp - 0x74], edi
and eax, ecx
mov ecx, 0x87
cmp ebx, ecx
je 0x418294
xor ecx, ecx
mov edx, ecx
cmp ebx, 0x7f
je 0x41829e
cmp ebx, 0x80
je 0x41829e
push eax
push dword [ebp + 0x28]
lea eax, [ebp - 0xa0]
push dword [ebp + 0x20]
push eax
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0xd8]
push eax
mov eax, dword [ebp + 0x24]
add eax, edx
lea edx, [ebp - 0x44]
push eax
push dword [ebp - 0x20]
lea eax, [ebp - 4]
push dword [ebp - 0x38]
push ecx
push dword [ebp + 0xc]
mov ecx, dword [ebp - 0x4c]
push eax
call fcn.00416db8
add esp, 0x34
test eax, eax
je 0x4182fd
mov eax, dword [ebp + 0x28]
mov ecx, 0x81
dec dword [eax + 0x58]
cmp ebx, ecx
je 0x45368c
mov esi, dword [ebp - 8]
push 0x7d
pop ecx
cmp ebx, ecx
jl 0x417a4e
add ecx, 3
cmp ebx, ecx
jle 0x4182a6
mov eax, 0x87
cmp ebx, eax
je 0x4536a5
mov eax, dword [ebp - 0xa0]
mov esi, dword [ebp - 4]
push 0x29
pop edx
cmp word [esi], dx
jne 0x45463b
mov edx, dword [ebp + 0x2c]
test edx, edx
jne 0x417fa6
mov edx, dword [ebp - 0x44]
mov dword [ebp - 8], edx
cmp ebx, 0x91
je 0x417875
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x6c], ecx
xor ecx, ecx
mov dword [ebp - 0x98], ecx
mov ecx, 0x81
cmp ebx, ecx
mov ecx, dword [ebp - 0xa4]
jl 0x453735
cmp dword [ebp - 0x2c], 0xfffffffe
je 0x45370d
test ecx, ecx
jns 0x418227
test eax, eax
js 0x417875
mov edi, dword [ebp - 0xac]
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x54], eax
jmp 0x417875
push 0x5d
pop eax
cmp word [esi + 2], ax
jne 0x41776d
jmp 0x454337
mov edx, dword [ebp - 0xc]
xor eax, eax
mov edi, eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x40], edx
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x4182ec
test edi, edi
jne 0x417b34
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x54], eax
mov eax, edi
mov dword [ebp - 0x44], ecx
sub eax, edx
neg eax
sbb eax, eax
and eax, 2
mov dword [ebp - 0x74], eax
xor eax, eax
mov dword [ebp - 0x20], eax
test ebx, ebx
jne 0x41827a
lea ecx, [esi + 2]
movzx eax, word [ecx]
push 0x2b
pop ebx
cmp ax, bx
je 0x452a0b
push 0x3f
pop ebx
cmp ax, bx
je 0x418100
mov ebx, dword [ebp - 0xdc]
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x10]
push 0x75
pop ecx
cmp word [eax], cx
je 0x452a22
movzx ecx, word [eax]
cmp cx, word [ebp - 0x104]
je 0x452fdb
cmp cx, word [ebp - 0x134]
je 0x452fdb
cmp cx, word [ebp - 0x10c]
je 0x452fdb
cmp cx, word [ebp - 0x14c]
je 0x452fdb
cmp cx, word [ebp - 0x114]
jb 0x418110
cmp cx, word [ebp - 0x13c]
jne 0x417d73
test edx, edx
je 0x418282
test edi, edi
jne 0x452f8c
cmp edx, 0xffffffff
jne 0x417ebc
lea eax, [ebx + 0x62]
mov edi, dword [ebp - 8]
push 2
pop ebx
mov word [edi], ax
add edi, ebx
mov esi, dword [ebp - 4]
xor edx, edx
mov dword [ebp - 8], edi
cmp dword [ebp - 0x20], 0
jne 0x453234
mov ecx, dword [ebp + 0x28]
xor eax, eax
mov ebx, eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x10], ebx
or dword [ecx + 0x68], eax
jmp 0x41751b
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x4172c2
jmp 0x451c04
test ecx, ecx
jne 0x4182e2
push 0x20
pop eax
push eax
lea eax, [ebp - 0xd4]
push eax
push edi
call fcn.00421080
add esp, 0xc
jmp 0x417827
mov edi, ecx
or edx, 0xffffffff
jmp 0x417b04
push 0x23
pop eax
cmp word [esi + 2], ax
jne 0x417902
jmp 0x451e2d
push 2
pop edx
add esi, edx
mov dword [ebp - 4], esi
movzx edi, word [esi]
mov eax, edi
cmp eax, 0x3a
jle 0x4520be
sub eax, 0x3c
je 0x4526ec
dec eax
je 0x452626
dec eax
je 0x45261d
sub eax, 5
je 0x452678
sub eax, 0xd
je 0x45263e
sub eax, edx
je 0x418266
sub eax, 0x2a
je 0x452610
mov eax, ecx
mov edx, ecx
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x4c], edx
cmp di, word [ebp - 0x118]
je 0x417d12
push 2
pop edx
push 0x3a
pop eax
cmp di, ax
je 0x417d0c
movzx eax, di
add esi, edx
mov dword [ebp - 4], esi
cmp eax, 0x69
jg 0x453625
jne 0x4535de
mov eax, dword [ebp - 0xc]
or dword [ecx], eax
movzx edi, word [esi]
mov bh, 0x3e
push 0x29
pop eax
cmp di, ax
jne 0x417cdd
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x24]
or edx, dword [ebp - 0x34]
not eax
and edx, eax
push 0x29
pop eax
mov dword [ebp - 0x4c], edx
cmp word [esi], ax
jne 0x41828a
mov eax, dword [ebx + 0x14]
push 4
pop ecx
add eax, ecx
cmp dword [ebp - 8], eax
je 0x453653
mov ecx, dword [ebp - 0xc]
mov eax, edx
shr eax, 9
and eax, ecx
mov dword [ebp - 0xdc], eax
xor eax, ecx
mov dword [ebp - 0xe8], eax
movsx eax, dl
and eax, ecx
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x34], edx
mov dword [eax], edx
xor eax, eax
mov ebx, eax
mov dword [ebp - 0x10], ebx
jmp 0x41751b
ret 0xe8c1
call 0x8a02a04d
test dword [edi + edi*8], esp
invalid
cmp cx, word [ebp - 0x11c]
je 0x417bd9
cmp cx, word [ebp - 0x150]
je 0x417bd9
cmp cx, word [ebp - 0x124]
je 0x417bd9
cmp ecx, 0x72
je 0x417bd9
cmp cx, word [ebp - 0xfc]
je 0x417bd9
cmp ecx, 0x74
je 0x417bd9
push 0x7d
pop edi
cmp cx, di
jb 0x452f70
add edi, 0xa
cmp cx, di
ja 0x452f70
mov ebx, dword [ebp - 0x88]
mov edi, dword [ebp - 8]
mov dword [ebp - 0x14], ebx
sub edi, eax
xor ebx, ebx
sar edi, 1
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x4c], ebx
mov ebx, 0x87
cmp cx, bx
mov dword [ebp - 0x18], edi
mov ebx, dword [ebp - 0x1c]
je 0x452aa2
mov eax, 0x81
cmp cx, ax
mov eax, dword [ebp - 0x50]
jb 0x452ab9
mov ecx, dword [ebp - 0xc]
test eax, eax
jne 0x452b3e
mov eax, dword [ebp - 8]
push dword [ebp - 0x88]
push dword [ebp + 0x28]
push dword [ebp - 0x3c]
cmp edx, ecx
jg 0x452aea
mov edx, dword [ebp - 0xc]
xor ecx, ecx
mov word [eax], cx
mov ecx, dword [ebp - 0x10]
call fcn.004186a1
mov ecx, dword [ebp - 0x10]
lea eax, [edi + edi]
add esp, 0xc
lea esi, [ecx + 2]
push eax
push ecx
push esi
call fcn.00428020
mov edx, dword [ebp - 0x40]
add esp, 0xc
push 2
pop eax
add dword [ebp - 8], eax
test edx, edx
je 0x452ada
mov ecx, dword [ebp - 0x10]
lea eax, [ebx + 0x92]
mov dword [ebp - 0x4c], ecx
mov word [ecx], ax
mov dword [ebp - 0x10], esi
dec edx
mov esi, dword [ebp - 4]
mov dword [ebp - 0x40], edx
test edx, edx
js 0x452e2b
mov ebx, dword [ebp + 0x2c]
test ebx, ebx
jne 0x4181a6
lea ebx, [edx - 1]
test ebx, ebx
jns 0x452ccb
xor edi, edi
mov edx, dword [ebp - 8]
mov ebx, dword [ebp - 0x24]
test ebx, ebx
jne 0x452ddb
mov edi, dword [ebp - 8]
xor edx, edx
push 2
pop ebx
jmp 0x417c08
cmp edx, dword [ebp - 0xc]
jne 0x452f9e
lea eax, [ebx + 0x66]
jmp 0x417bf5
push 4
pop eax
add esi, eax
push 0x5c
pop eax
mov dword [ebp - 4], esi
cmp word [esi], ax
push 4
pop eax
je 0x4541da
movzx eax, word [esi]
test ax, ax
je 0x4182d8
test edi, edi
jne 0x417f00
push 0x5d
pop edi
cmp ax, di
je 0x4182d8
cmp dword [ebp - 0x3c], 0
mov edi, eax
mov dword [ebp - 0x18], edi
je 0x417f1f
mov ecx, 0xfc00
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
je 0x454249
cmp dword [ebp - 0x30], 0
jne 0x417f39
add byte [ebp + 0x14], dh
push 0x5c
pop eax
cmp edi, eax
je 0x45426e
cmp edi, 0x5b
je 0x4542b6
mov ecx, dword [ebp + 0xc]
cmp edi, ebx
jb 0x4546a1
je 0x41774e
push 2
pop eax
push 0xd
mov dword [ebp - 0x58], eax
pop eax
cmp edi, eax
je 0x4542f6
push 0xa
pop eax
cmp edi, eax
je 0x4542f6
mov eax, dword [ebp + 0x28]
push edi
push ebx
push eax
jmp 0x417772
mov edx, dword [ebp - 8]
push 0x10
pop ecx
push 9
mov word [edx], cx
mov dword [edx], ecx
add edx, esi
pop ecx
mov word [edx], cx
add edx, esi
mov word [edx], ax
add edx, esi
cmp dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 8], edx
jne 0x417872
jmp 0x45443d
or ebx, 0xffffffff
mov dword [ebp - 0x2c], ebx
jmp 0x4177d8
mov edi, dword [ebp - 0x84]
mov ecx, 0x7fffffeb
mov edx, dword [edx]
sub ecx, edx
lea eax, [edi - 4]
cmp ecx, eax
jl 0x454601
mov ecx, dword [ebp + 0x2c]
lea eax, [edi - 4]
mov edi, dword [ebp - 8]
add eax, edx
push 2
mov dword [ecx], eax
pop ecx
add edi, ecx
push 0x78
pop eax
mov word [edi], cx
add edi, ecx
mov word [edi], ax
add edi, ecx
mov word [edi], cx
add edi, ecx
jmp 0x41782c
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0xfffffffe
jne 0x417ff7
or ecx, 0xffffffff
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x64]
mov ebx, edx
mov edi, dword [ebp - 0x5c]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x34]
push 4
mov dword [ebp - 0x6c], ecx
pop ecx
movsx eax, al
and eax, ecx
mov dword [ebp - 0x28], edi
push 0x30
pop ecx
or eax, ecx
shr eax, 2
mov dword [ebp - 0x10], ebx
mov word [edx], ax
push 2
pop eax
add edx, eax
mov dword [ebp - 8], edx
jmp 0x417518
cmp edi, 0x1a
je 0x453438
cmp edi, 0x19
je 0x417515
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0xfffffffe
jne 0x41805c
lea eax, [edi - 6]
cmp eax, 0x10
ja 0x41805c
or ecx, 0xffffffff
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x54]
push 0x1b
mov dword [ebp - 0x58], eax
pop eax
mov dword [ebp - 0x6c], ecx
cmp edi, eax
je 0x453460
push 0x1c
pop eax
cmp edi, eax
je 0x453763
test edi, edi
js 0x4182ae
push 0xf
pop eax
cmp edi, eax
je 0x453bca
push 0x10
pop eax
cmp edi, eax
je 0x453bca
mov ecx, dword [ebp - 0xc]
cmp edi, 5
je 0x453b98
push 4
pop eax
cmp edi, eax
je 0x453b98
cmp edi, ecx
je 0x453b98
push 0x1d
pop eax
cmp edi, eax
jge 0x453ba9
mov edx, dword [ebp - 8]
lea eax, [edi - 6]
push 0x10
pop ecx
cmp ecx, eax
sbb ebx, ebx
not ebx
and ebx, edx
cmp dword [ebp - 0x3c], 0
mov dword [ebp - 0x10], ebx
je 0x453bb7
push 2
mov word [edx], di
pop esi
add edx, esi
mov dword [ebp - 8], edx
mov esi, dword [ebp - 4]
jmp 0x41751e
mov ebx, dword [ebp - 0xe8]
mov esi, ecx
int1
mov dword [ebp - 4], esi
jmp 0x417b76
push 0x34
pop edi
mov ebx, ecx
mov ecx, dword [ebp - 0x10]
push 0x10
pop edx
movzx eax, word [ecx]
cmp ax, dx
je 0x45308e
push 0xf
pop edx
cmp ax, dx
je 0x45308e
or dword [ebp - 0x14], 0xffffffff
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x24], edx
test eax, eax
je 0x417c12
add dword [ebp - 0x1c], edi
cmp dword [ebp - 0x50], 0
jne 0x4530ca
in al, 0x83
jge 0x418107
add byte [edi], cl
test dword [edi + ebp*4 + 3], ebp
add byte [ebx - 0x7af00008], al
aaa
scasd eax, dword es:[edi]
add eax, dword [eax]
cmp eax, 0xffffffff
jne 0x45309e
mov eax, dword [ebp - 0x1c]
add eax, 0x21
mov ecx, dword [ebp - 0x10]
mov word [ecx], ax
lea edi, [ecx + 2]
mov esi, dword [ebp - 0x14]
push 2
pop ecx
cmp dword [ebp - 0x3c], 0
je 0x41818e
test ebx, 0x10000000
jne 0x45320f
mov word [edi], bx
add edi, ecx
mov dword [ebp - 8], edi
test edx, edx
jns 0x452fc9
mov esi, dword [ebp - 4]
jmp 0x417eb2
test edx, edx
jle 0x417e94
jmp 0x452c84
lea ecx, [esi + 2]
cmp word [ecx], dx
je 0x4182b5
push 3
mov edx, 0x48fbc0
call fcn.00418395
pop ecx
test eax, eax
jne 0x417685
mov eax, dword [ebp - 0x24]
add esi, 6
jmp 0x417654
push dword [ebp - 0xc]
mov ebx, dword [ebp + 0x28]
lea edx, [ebp - 0x94]
push dword [ebp - 0x34]
lea ecx, [ebp - 4]
push dword [ebx + 0x40]
push dword [ebp + 0xc]
call fcn.004183c4
mov edx, dword [ebp + 0xc]
xor ecx, ecx
add esp, 0x10
mov esi, eax
cmp dword [edx], ecx
jne 0x4182fd
test esi, esi
jne 0x4182bf
mov ebx, dword [ebp - 0x94]
mov esi, dword [ebp - 4]
mov dword [ebp - 0x18], ebx
jmp 0x417715
test eax, eax
jns 0x417ada
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xac], eax
mov eax, ecx
or eax, edi
mov dword [ebp - 0xa0], eax
jmp 0x417ad2
mov edx, eax
mov dword [ebp - 8], edx
jmp 0x4172ef
mov ebx, 0xff
jmp 0x451ca5
mov edi, dword [ebp - 0xc]
jmp 0x417c5a
add esi, edx
mov dword [ebp - 4], esi
jmp 0x452603
mov ebx, 0x83
jmp 0x45366d
add esi, 2
jmp 0x452930
mov dword [ebp - 8], eax
jmp 0x417c12
mov ebx, 0x83
jmp 0x452631
mov edx, dword [ebp - 0xc]
xor ecx, ecx
jmp 0x4179d9
mov ecx, dword [ebp - 0xc]
jmp 0x4179d9
dec dword [eax + 0x5c]
jmp 0x417a4e
neg edi
jmp 0x453b1e
push 0x5c
mov esi, ecx
pop ecx
jmp 0x41765a
cmp esi, 5
jne 0x453f45
push 8
pop ebx
jmp 0x41821c
push 0x45
pop ebx
jmp 0x4541ab
mov esi, ecx
mov dword [ebp - 4], esi
jmp 0x41774e
push 0x20
xor eax, eax
pop ecx
jmp 0x454548
push 9
jmp 0x454681
mov eax, dword [ebp + 0xc]
mov dword [eax], edi
jmp 0x4546b2
mov esi, dword [ebp - 4]
jmp 0x4546b2
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
call 0xdd48ff72
jmp 0x4435b5
add byte [eax], al
add byte [edx], dl
push esp
mov dword [esp + 0x10248410], 0xf2c0e4e9
call 0x104381e4
test dword [0xcfffcc3], ebp
inc esp
and al, 0x10
std
inc esp
and al, 0x10
push 1
std
dec esp
and al, 0x6c
add byte [eax], al
adc dl, byte [edi + eax*8 - 0x7c]
and al, 0x9c
mov eax, 0x90e8fee0
jecxz 0x4472f9
push dword [eax - 0x4c]
invalid
enter 0xffffffffffff848b, 0x24
invalid
dec dword [ebp + 0xbf2e834]
cld
dec dword [ebx - 0x16c7dba4]
inc ecx
cld
std
call ecx
bswap eax
mov dword [eax + ebp*8], eax
add al, 0xe8
dec esp
jmp 0xffba33c7
dec dword [ebp + 0xbc6e834]
cld
dec dword [ebx - 0x16c7dba4]
mov bl, 0xc1
cld
invalid
cmp esi, 4
jne 0xfe4135b5
add byte [eax], al
adc ah, byte [eax + 0x68541209]
stc
dec eax
mov word [ecx], es
add byte [eax], al
movsb byte es:[edi], byte [esi]
push eax
lea ecx, [esp + 0x24]
mov dword [eax + eax + 0x50a81200], 0x24244c8d
mov dword [eax + eax + 0x50ac1200], 0x24244c8d
mov dword [eax + eax - 0x7be3dbbc], 0xff89085e
mov ecx, esp
push 0x84c72424
add byte [esp + 0x24], al
and al, 0x24
mov dword [eax + eax + 0x24282444], 0x84c724
inc esp
and al, 0x50
and al, 0x24
mov dword [eax + eax + 0x24582444], 0x84c724
inc esp
and al, 0x5c
invalid
clc
inc eax
call 0x8bc92baf
push edi
add ah, al
push 0x76
pop eax
mov word [edx], ax
lea eax, [edx + 2]
mov dword [ebp - 0x78], edx
dec dword [ebx - 0x7af02ec5]
mov dword [eax], edx
sub esi, dword [ecx + 0x18]
xor ecx, ecx
push 2
pop edx
add eax, edx
sar esi, 1
mov word [eax], si
mov word [eax + 2], cx
add eax, 4
mov esi, dword [ebp - 4]
mov dword [ebp - 8], eax
jmp 0x4447439
invalid
mov eax, dword [ecx + 0xcc48b84]
lea esi, [esi + eax*2]
mov dword [ebp - 4], esi
movzx edi, word [esi]
mov bh, 0x3e
notrack jmp 0x451ce3
jmp 0x451ce3
mov byte [ebx + 0x1275fdea], al
cmp edx, dword [ebp - 0xc]
je 0x451d42
mov ax, word [esi + 2]
cmp ax, word [ecx - 0x27feb676]
je 0x451d42
push 2
pop edx
add esi, edx
cmp dword [ebp - 0x3c], 0
mov dword [ebp - 4], esi
je 0x451dab
jge 0x451d4f
add byte [ecx + 0x1a74fc75], cl
mov ax, word [esi]
mov edi, 0xc1ff14c3
je 0x451d50
invalid
inc esi
jl 0x451d6b
jne 0x451dab
add esi, edx
mov dword [ebp - 4], esi
movzx edi, word [esi]
ud0
jmp 0x102173cd
jge 0x451dda
push ebp
cld
dec dword [ebp + 0x7d8b0285]
fdiv st(7), st(0)
lea eax, [edx]
mov edi, dword [ebp - 0x24]
mov bh, 8
mov ecx, dword [edi + 0x3ff5ac3]
cmp dword [ebp + 0x2c], ecx
jne 0x451e16
mov eax, dword [ebp + 0x28]
sub esi, dword [eax + 0x18]
lea ebp, [edi]
mov cl, dl
invalid
add eax, 0xffffff89
inc ebp
mov cl, ch
sahf
pop edx
push ebp
hlt
push ebp
cld
dec dword [ebp + 0x766af82f]
pop edx
mov dword [ebp - 0x78], eax
test dword [ecx - 0x33f7cf0], ecx
dec dword [ebx + 0x6a0fd13b]
add al, byte [ebp - 0x3aa5ef77]
push ecx
das
dec edx
sub byte [ebx], ch
jb 0x451e6a
sar esi, 1
xor edx, edx
mov word [eax + 2], dx
lea edx, [eax + 4]
mov word [eax], si
mov esi, dword [ebp - 4]
mov dword [ebp - 8], edx
jmp 0x4173ec
jmp [edx + 4]
cmp ax, dx
je 0x451e90
or eax, 0x7589f303
cld
add esi, ebx
mov dword [ebp - 4], esi
movzx eax, word [esi]
inc si
jne 0x451e7e
cmp word [esi], cx
test byte [esi], al
movsb byte es:[edi], byte [esi]
invalid
jl 0x4520df
cmp esi, 0xfd13b99
jle 0x4520d9
cmp esi, 0x191e99b
add byte [eax], al
or dword [ebx + 0x64], 0x1000
jmp 0x4520df
mov eax, dword [ebp - 0xc]
mov dword [ebx + 0x70], eax
mov esi, dword [ebp - 4]
push 9
pop eax
cmp dword [edx + esi*8 - 0x235dbfd], eax
invalid
push ebp
clc
mov eax, 0x8dc18191
cmp ebx, dword [ebp - 0x1c]
test dword [ecx + 0x458b0442], ecx
add al, 0x8b
inc ebp
hlt
add ah, al
push 0x2b
pop edx
cmp eax, edx
je 0x452641
push 0x2d
pop edx
cmp eax, edx
je 0x452641
cmp eax, 0x2f
jle 0xf49a7d02
mov cs, esp
push esi
push ebp
hlt
push 0x39
pop edx
cmp eax, edx
jg 0x417d02
push esi
cld
jmp [edx + 0x29]
push 0x29
pop eax
mov eax, ecx
mov dword [ebp - 0x4c], ebx
jmp 0x413549
das
adc byte [eax], al
add byte [ebx], al
push 0x3d
mov dword [ebp - 4], esi
pop eax
movzx edi, word [esi]
push 0xf801
test byte [edx + edi*8 + 0x3e6adc7d], ah
pop eax
push 0x7401
adc ebp, dword [edx + 0x3c]
pop ecx
cmp di, cx
je 0x20bd1fdf
push 0x29
jmp 0x4146bc
fdiv qword [edi + 0x18]
imul ecx, ecx, 0xa
add esi, ebx
ret
add al, 0x6b
dec ebx
xor byte [ebx + ecx*4], cl
inc ebx
sub byte [ebx + 0x5489e8c8], cl
add dword [eax], ecx
inc dword [ebx + 0x30]
mov esi, dword [ebp - 4]
cld
jmp 0x4528fd
push 2
pop eax
add esi, eax
mov dword [ebp - 4], esi
jmp 0x3bc97989
jmp 0xf49a805f
inc esi
add ah, byte [esi + 0x3b]
or dword [edx + 0x74d80149], 0xffffffc8
push 2
pop edx
add esi, edx
cmp dword [ebp - 0x3c], 0
je 0x452a38
mov ax, word [esi]
mov eax, dword [esi]
mov eax, ebx
adc al, 0xff
sal dword [ebp + esi*4 - 0x17], 0xe
cmpsb byte [esi], byte es:[edi]
cld
dec dword [ebx + 0x4d0c7c46]
add al, byte [ebx]
movzx edi, word [esi]
movzx edi, word [esi]
ud0
mov eax, dword [ebp + 0x28]
push 2
pop edx
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x10]
add eax, edx
cmp ecx, eax
jb 0x452ad2
movzx edx, word [ecx - 2]
mov eax, esi
mov esi, dword [ebp + 0x28]
push 2
sub eax, dword [esi + 0x14]
pop esi
add eax, esi
mov word [edi - 4], gs
push dword [ebp + 7]
lea eax, [edx + 2]
mov word [ecx - 2], ax
invalid
mov eax, dword [ebp - 0x10]
push bp
ror byte [ebx - 0x1916038b], 0x50
test byte [ebx], bh
mov ebx, 0x8dc18191
cmp word [eax + 4], bx
cmp ebx, dword [ebp - 0x1c]
je 0xc4457c50
cld
jmp 0x3bc97bc6
pop ebp
in al, 0xf
test byte [esi + 0x51], bl
add ah, al
jmp 0x10217e3b
add al, 0x3f
push eax
lea eax, [esi + 6]
push esi
push eax
call fcn.0042805e
add dword [ebp - 8], 6
lea eax, [ebx - 0x35d4006e]
mov edx, dword [ebp - 0x40]
adc dword [eax + eax*8 - 0x47f9769a], 0xffffff83
ror byte [ecx + 0x59026a54], 1
add esi, ecx
mov word [esi], ax
add esi, ecx
xor eax, eax
mov dword [ebp - 0x24], esi
mov word [esi], ax
add esi, ecx
jmp 0xf9c67eb5
add esp, 0xc
jmp 0x452c37
mov ecx, edx
call 0x8948e125
dec ebp
dec ebp
or al, 0x89
add dword [ecx], edx
mov ecx, dword [edi]
test dword [edi + edx*2], eax
cld
dec dword [ebp - 0x3174d7ab]
lea edx, [ebp + 0x28]
mov ecx, esi
sub ecx, edi
add ecx, dword [edx + 0x3c]
mov eax, dword [edx + 0x10]
lea eax, [eax + ecx*2]
add eax, 0xf8d17846
cmp dword [edx + 0x20], eax
ja 0x452c23
mov eax, dword [edx + 0x10]
lea edx, [eax + esi*2]
lea esi, [edi + edi]
add eax, esi
cmp edx, eax
jae 0x452c89
mov edi, dword [ebp - 0x18]
add ecx, dword [esi + 0xa8b5528]
mov eax, dword [ebx + 0x20]
add cx, di
push 2
test dword [ecx + 0x43015808], ecx
and byte [ebx], al
sar bh, 1
inc ebx
adc byte [ebx], al
invalid
jge 0x452c1e
mov ebx, dword [ebp - 0x18]
fcomp dword [ecx + 0x3b]
mov esi, edi
mov edi, dword [ebp - 0x18]
inc ebx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x38], ebx
lea eax, [eax + edi*2]
add dword [ebx - 0x7fba07bb], ecx
cmp ebx, dword [ebp - 0x50]
mov eax, ecx
and eax, 0x8b00fc00
jne 0x452ca9
add byte [ebx + 0x458bfc75], cl
mov al, 0x8b
push ebp
rol byte [ebx + 0x68e0fd2], 0x52
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x40]
adc edx, 0xf
mov es, word [esi]
push edx
cld
jmp [ebx]
mov ecx, eax
imul ecx, edx
push 4
imul edx
pop edi
sub ecx, edi
xor edi, edi
cmp edx, edi
jg 0x8354463f
leave
std
jmp dword [ebx]
add byte [esi + 3], ah
leave
cmova esp, dword [eax]
test dword [ecx + 0x47015808], ecx
and byte [ebx], al
sar bh, 1
inc edi
adc byte [ebx], al
invalid
jne 0x452e31
mov ebx, edi
jmp 0x452e36
neg eax
rol byte [ebx - 0x7207f708], 1
push 0x78
or al, bh
lea ebp, [edx + 0x78]
pop esi
push 2
test dword [ecx - 0x39fca1d0], ecx
test dword [ecx - 0x7a39fcf8], ecx
mov dword [edx + 2], ecx
mov edx, eax
add dword [ebx + 0x75db8545], ecx
ret
pop ebp
clc
xor eax, eax
push dword [ebp + 0x28]
mov esi, ebx
mov ecx, edi
push dword [ebp - 0x3c]
mov word [ebx], ax
sub esi, edi
push 2
pop eax
mov edx, eax
sar esi, 1
call 0xf8c286df
add esp, 0xc
lea eax, [esi + esi]
push eax
lea eax, [edi + 4]
push edi
push eax
call 0x9be9805e
cld
adc cl, ch
push 4
pop eax
add ebx, eax
mov eax, 0xd4880f84
push 2
pop edx
test dword [ecx + 0x6af20307], ecx
jnp 0x452fba
mov word [ebx], ax
add ebx, edx
mov word [ebx], si
add ebx, edx
mov dword [ebp - 8], ebx
test dword [ecx + 0x458b0277], ecx
mov ah, 0x5f
mov dword [edi + 2], esi
mov eax, dword [ebp - 0x4c]
pop edi
lcall 0xc181, 0x94b90874
lea esp, [esi - 0x77]
or byte [ebx + 0x5539f87d], cl
mov al, 0xf
lea ecx, [esi + 0x52]
mov dword [eax], ecx
mov edi, dword [ebp - 8]
cmp dword [ebp - 0x50], edx
jge 0x7d4181dc
cld
jl 0x452f1a
mov esi, dword [ebp - 4]
jne 0x452f8d
adc edx, 0xffffff89
push ebp
loopne 0x452f80
push edi
dec edi
cld
inc dword [eax]
cld
in al, 0x83
sar byte [ecx - 0x15], 3
movzx eax, al
add eax, 0x79
jmp 0x452fa6
mov word [ecx], ax
jmp 0x4533c9
add ah, bh
add ah, bh
or al, 0xc7
add byte [ebx], cl
std
or edi, ebp
inc dword [eax]
jmp 0x4546f0
add byte [ebx], bh
jge 0x452fc1
jne 0x452fdc
cmp edx, 0x48
mov eax, dword [esi - 0x169bbc24]
push edi
dec esp
mov bh, 8
or byte [ecx], bh
dec ebp
clc
cmp dword [ebp - 8], ecx
lea eax, [ebx + 0x68]
push 2
test dword [ecx - 0x37fca7ff], ecx
push eax
mov dword [ebp - 8], ecx
lea eax, [edx + 1]
mov word [ecx], di
mov edi, ecx
pop ecx
add edi, ecx
neg eax
sbb eax, eax
and eax, edx
mov dword [ebp - 0x40], eax
mov word [edi], ax
jmp 0x45300f
pop ss
add edi, ecx
mov word [edi], si
jge 0x453009
cmp eax, 0xd
jg 0x452fd9
push ecx
mov bl, 0xfc
push 0x1e
mov eax, ecx
pop edx
sub eax, edx
je 0x453035
dec eax
je 0x453030
dec eax
je 0x45302c
xor eax, eax
jmp 0x453038
push 0x27
jmp 0x453037
push 0x1a
pop edi
jmp 0x45303a
push 0xd
pop eax
mov edi, eax
cmp dword [ebp - 0x3c], 0
mov ebx, dword [ebp - 8]
je 0x453099
lea edx, [ebx - 2]
jae 0x45308a
add edi, 0x23
test esp, edx
and al, 0xf
mov es, word [edx]
cmp eax, dword [ebp - 0x71f0db48]
jne 0x453099
jne 0x453043
std
jmp [edx]
cld
cld
adc cl, ch
or ebx, 0x10000000
jmp 0x418153
ret
push ds
pop eax
test dword [ebx], edi
enter 0xffffffffffff870f, 0xffffffffffffffaa
push eax
mov bh, 8
cmp dword [ebp - 0xc], eax
cmp dword [ebp - 0x50], eax
jle 0x8fc8153
cmp dword [ebp + 0x28], eax
mov dword [ebp - 0x5c], ebx
mov eax, dword [eax + 0x68]
or eax, dword [ebp + 0xde94774]
call 0x882edda1
push eax
cld
inc ebx
inc ecx
add al, 0xf
mov bh, 0x51
add cl, byte [ecx - 0x631613bb]
push eax
xor dword [edx], 0xffffffc9
jb 0x4530de
invalid
inc dword [ebp - 0xc]
mov esi, dword [ebp + 0x73]
push cs
inc ebp
in al, 0x6a
add cl, byte [ebp + 0xb750279]
add eax, 0x25
mov word [ecx], ax
jmp 0xf8c281b9
pop ss
add edi, esi
mov esi, dword [ebp + 0x73]
mov word [edi], si
or al, 0x81
stc
sub dword [ebx], eax
mov esi, dword [ebp + 0x73]
sub ecx, eax
or byte [ebp - 0x3fb27bbb], cl
push 2
cmp ecx, dword [ebp - 0xc]
jne 0x453237
add eax, 0x25
mov word [edi], ax
pop es
jmp 0x453245
add eax, 0x27
test dword [ecx - 0x7fca7f9], ecx
push 2
test dword [ecx - 0x6fca6f1], ecx
pop ecx
add edi, ecx
jmp 0xfcf881ba
cld
mov esp, 0x4c08350
push eax
call 0x9be9805e
cld
adc cl, ch
lea ecx, [esi + 0x7f]
add edi, esi
push 4
pop eax
add ebx, eax
mov edi, esp
mov esp, 0x8966786a
or byte [eax + 0x66], bl
mov dword [ebx], eax
add ebx, esi
mov word [ebx], di
add ebx, esi
mov edi, esp
mov esp, 0x85f85d89
mov dword [eax + 2], edi
mov esi, dword [ebp - 4]
jmp 0x417c50
fmul dword [ecx + 0x1274f05d]
cmp dword [ebp - 0x2c], 0xfffffffe
jne 0x4533ec
or dword [ebp - 0x2c], 0xffffffff
or dword [ebp - 0x6c], 0xffffffff
push 0x1c
jmp 0x4533f2
pop eax
jmp 0xfc458062
add ah, bh
add ah, bh
or al, 0xc7
add byte [eax - 3], al
inc dword [eax]
jmp 0x2fd46f0
test dword [edx], ecx
mov eax, dword [esi + 0x7c]
mov ebx, esi
jmp 0xfc457462
add ecx, dword [edi]
test dword [ebx - 0x417cf743], ecx
mov word [ebx - 0xbaa1e3f], cs
mov dword [ebp - 0x18], edi
jmp 0x7d41745f
push ds
jne 0x8d694688
push 0x2d
pop eax
cmp edx, eax
jne 0xca703783
cmp edi, 0xf
test byte [eax + edx + 0x558b8b02], cl
sub byte [ebx - 0x38d4bfbe], cl
lea edi, [eax + 1]
cmp edi, 0xf
invalid
dec edx
je 0x453649
cmp eax, 0x55
je 0x45363e
cmp eax, 0x58
jne 0x5049464d
or dword [ecx], 0x40
jmp 0x417d3f
or dword [ecx], 0x8d8b0200
jmp 0x417d3f
or dword [ecx], 0x80000
or dword [ebx + 0x64], 0x247b700
and esp, 0x8dfffc46
dec ebp
fsub st(1), st(0)
fadd qword [esi - 4]
inc esp
clc
insd dword es:[edi], dx
je 0x45368a
mov bh, 0x47
add al, byte [ecx - 0x3b91c]
lea ecx, [ebp - 0x24]
jmp 0x417d3f
push 0x73
pop edi
cmp eax, edi
je 0x453682
push 0x78
pop edi
cmp eax, edi
jne 0x5049464d
add al, 0x50
or dword [ecx], 8
jmp 0x417d3f
push 4
pop eax
jmp 0x417d3d
or dword [ecx], edx
jmp 0xfc457d3f
inc esi
add ah, bh
add byte [ebp - 0x1c], bl
push 0x52
pop edi
mov edx, ebx
invalid
inc esi
add al, 0x75
adc byte [edx], al
mov dword [ebp - 8], edi
pop dword [ebx + 0xf]
add al, 0x50
mov ebx, eax
jmp 0xfcf87a99
dec esi
enter 0xbff, 0xffffffffffffffc8
mov dword [ebp - 0x38f874a0], eax
mov dword [ebp - 0x238274a4], ecx
jmp 0xf49a7a9f
invalid
push ebp
clc
add ah, bh
sub bl, ch
sahf
mov edx, dword [ebp - 8]
add ah, bh
sub bl, ch
cwde
ret
shl eax, cl
or dword [esi + 0x50], eax
cmp edi, dword [esi + 0x4c]
jle 0x453ba5
mov dword [esi + 0x4c], edi
mov ecx, dword [esi + 0x24]
jmp 0x453bb9
jge 0xb1306424
ret
mov ecx, dword [ecx]
test ecx, ecx
jne 0x453baf
jmp 0x8fc8136
push 0x3908b745
push ebp
clc
jmp 0x8fc8136
push ebp
clc
add eax, 0x6a
adc byte [ecx + 0x3b], bl
stc
mov ebx, edx
push 0xf
sete al
mov dword [ebp - 0x10], ebx
xor ecx, ecx
cmp eax, dword [ebp - 0x3c74f530]
pop eax
setne cl
add ecx, eax
mov ax, word [ebp - 0x4c]
mov word [edx], cx
push 2
pop esi
add edx, esi
test dword [ecx + 0x66d60302], ecx
mov eax, dword [ebp - 0x38]
mov word [edx], ax
jmp 0xfc458131
ret
loop 0x453c7a
invalid
cld
lea eax, [esi + 0xe]
mov esi, 0x4b87dc
jmp 0xfd451eb0
ret
inc ebp
xchg esp, eax
jmp 0x4178b0
add esi, 2
mov ecx, 0x83490579
and ebx, ecx
shl ebx, 0xa
movzx eax, word [esi]
and eax, ecx
mov dword [ebp - 4], esi
or ebx, eax
add ebx, 0xb70fc803
add al, 0x5d
call 0xb77f1e26
or byte [ecx], bh
inc ebp
hlt
pop ss
mov al, byte [ebp + ecx - 0x71f0db78]
not al
or byte [ebp + ecx - 0x71f000d4], al
inc ecx
cmp ecx, edx
jb 0x453f46
jmp 0x453f70
mov esi, dword [ebp - 0x70]
push 2
pop edx
add esi, edx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x58], edx
jmp 0xd29f085f
test byte [ebp - 0x34], 0x40
mov esi, dword [ebp - 4]
jne 0x47fc50c4
movzx ebx, word [esi]
dec ecx
push 0x7d
call 0x2b9f21d2
ror dword [ecx + 0x4589e85d], 0xa8
jmp 0xc4457751
dec dword [edi]
mov gs, eax
and ebx, dword [ebx + 0x10fc0003]
adc cl, ch
or al, 0x36
cld
jmp [eax - 0x80]
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x71f000d4]
call fcn.0048ddd8
cld
adc byte [ecx + ebp*8], cl
out 0x35, al
cld
jl 0x45416d
jne 0x4541e0
jmp 0x7d4177d0
retf
je 0x4541e2
add esi, eax
push 0x5c
pop eax
mov dword [ebp - 4], esi
cmp word [esi], ax
push 4
pop eax
jne 0x45427c
push 0x45
pop eax
cmp word [esi + 2], ax
push 4
inc esi
add ch, byte [edx + 4]
pop eax
jne 0x45427c
add esi, eax
push 0x5c
pop eax
mov dword [ebp - 4], esi
cld
cmp word [esi], ax
push 4
pop eax
je 0x454240
jmp 0x417f22
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0x30], edi
jmp 0x89417f22
cmp al, 0xfc
mov byte [ebx + 0x79b902c6], al
add eax, 0xf9238349
and edi, ecx
shl edi, 0xa
movzx eax, word [esi]
and eax, ecx
mov dword [ebp - 4], esi
or edi, eax
add edi, 0xb70fc803
add al, 0x7d
call 0xf81f494
mov bh, 0x47
jne 0x4542a3
mov bh, 4
jge 0x45428f
jmp 0xb7547f5d
mov eax, dword [ebp + 0x28]
cmovge edi, esp
push dword [ebp - 0x34]
jne 0x454284
push dword [eax + 0x40]
push edx
lea edx, [ebp - 0x18]
call 0x32c88402
leave
jb 0x4542d3
xor edx, edx
cld
adc byte [eax], dl
cmp dword [ecx], edx
jne 0x7d41833b
jl 0x454260
mov esi, dword [ebp - 4]
jne 0x4542d3
test eax, eax
je 0x4542ec
cmp eax, 5
jne 0x838e48d7
push 8
pop edi
jmp 0x417f7a
mov edi, dword [ebp - 0x18]
jmp 0xea447f7a
invalid
sal dword [esp + ecx + 0x6a], 0x3d
pop ecx
cmp ax, cx
jne 0xfd417f77
lea edx, [ebp - 0x70]
mov ecx, esi
call 0x8d48e06c
adc dword [ebx + 0x3c51844d], ecx
add ah, bh
add ah, bh
or al, 0xc7
add byte [ebx - 3], dl
inc dword [eax]
mov dword [eax], 0xfffd53
jmp 0x84545cf0
or dword [eax + 0x64], 0xff0800
jmp 0xfc457fa7
div byte [ecx + ebx - 0x7f]
sti
and eax, dword [ebp + 2]
mov esi, dword [esi + 0x11]
mov edx, edi
mov ecx, ebx
call fcn.0048ef68
lea edi, [edi + eax*2]
jmp 0xfc45786a
jmp 0xf8c28020
and eax, dword [ebp + 2]
mov ecx, dword [edi]
xchg dword [ecx], eax
lock or byte [ebp - 0x1604749a], cl
mov esp, 0xfc0034
test dword [edx], ecx
mov eax, dword [esi + 0x7c]
xor al, 0
cld
add byte [ebp + 0x7c468b0a], al
mov edx, 0x83490579
and ecx, edx
and eax, edx
cmp ecx, dword [ebx]
shl eax, 7
and ecx, 0xe908457f
jg 0x4544ba
or cl, ch
adc esi, dword [eax]
cld
inc dword [ebx - 0x3b006bb3]
dec ebp
aam 0xff
jmp 0x32c878b0
xor al, 0x83
xor cl, cl
jb 0x4544b3
or dword [ecx + 0x64], 0xff0800
jmp 0x417516
inc edi
jmp 0x899c80ad
jg 0x4544b3
mov eax, dword [ecx + 0x68]
mov dword [ebp - 0x5c], edi
movsb byte es:[edi], byte [esi]
call 0xee2ef198
xor edi, esp
inc dword [ebx - 0x16b88b43]
or eax, 0x7089573c
xor byte [edi - 0x7aac6f8], dh
jmp 0x4178b0
and byte [ebx], dh
rcr byte [ecx - 0xa], 0x94
add eax, 0x8e0fff2c
not byte [ebp + eax - 0x71f000d4]
inc eax
cmp eax, ecx
jb 0x45454c
push 0x20
pop eax
push eax
lea eax, [ebp - 0x71f000d4]
push eax
push dword [ebp - 8]
call 0xf8c310be
add esp, 0xc
add edi, 0x20
mov ebx, dword [ebp - 0x10]
add bh, al
sub eax, ebx
mov dword [ebp - 8], edi
sar eax, 1
mov word [ebx + 2], ax
jmp 0x417556
mov bh, 0
and edx, 0x6a
sub ebp, ecx
dec dword [edi]
mov bh, 0x43
mov edi, esp
or al, 0xc7
add byte [0xe900fffd], dl
and dword [0xfc00fc00], edi
or al, 0xc7
add byte [ecx], dh
std
inc dword [eax]
jmp 0x8d6a2e70
mov cl, 0x47
add al, byte [ecx - 0x38f30400]
add byte [edi + edi*8], dl
sub ecx, edx
jmp 0x81478df0
push esp
jmp 0x4546f0
mov dword [eax], ecx
jmp 0xfc45833b
cld
or al, 0xc7
add byte [eax], ch
add eax, ebx
adc al, 0xe9
test dword [ebx + esi*4], edi
cld
push 0x1e
jmp 0x4546bc
add ah, bh
or al, 0x59
mov dword [eax], ecx
jmp 0x4546f0
add ah, bh
xor dword [edx], 0x30
xor eax, eax
jmp 0x4175ee