Function at 0x457da0
Capabilities:
Check for software breakpoints
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 0xc]
sub esp, 8
push ebx
push esi
xor ebx, ebx
push edi
cmp edx, 0xd2
jg 0x458db9
je 0x458d9a
lea eax, [edx - 3]
cmp eax, 0xcc
ja case.0x45a70b.30118
movzx eax, byte [eax + 0x45a954]
jmp dword [eax*4 + 0x45a80c]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
jl 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x8e0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa64], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov edx, dword [ebp + 8]
pop edi
pop esi
cmp dword [eax], ecx
mov eax, dword [edx + 0xa9c]
setne cl
and eax, 0xfffffffe
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffffffd
and ecx, 2
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xbfffffff
and ecx, 0x40000000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfdffffff
and ecx, 0x2000000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
pop edi
mov edx, dword [eax]
mov eax, dword [esi + 0xa98]
neg edx
mov ecx, dword [esi + 0xaec]
sbb edx, edx
and eax, 0xfff7ffff
and edx, 0x80000
or edx, eax
mov eax, ecx
and eax, 0xffffffef
mov dword [esi + 0xa98], edx
or ecx, 0x10
and edx, 0x80000
cmove ecx, eax
mov eax, ebx
mov dword [esi + 0xaec], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xefffffff
and ecx, 0x10000000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffefffff
and ecx, 0x100000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xdfffffff
and ecx, 0x20000000
or ecx, eax
mov dword [edx + 0xa98], ecx
test ecx, 0x20000000
je 0x457fbb
and ecx, 0xefffffff
mov eax, 5
pop edi
mov dword [edx + 0xa98], ecx
mov dword [edx + 0x828], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 1
pop edi
mov dword [edx + 0x828], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffffdff
and ecx, 0x200
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
cmp eax, 0x20c49b
jg 0x45a7d9
imul ecx, eax, 0x3e8
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x648], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x650], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 2
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x918], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffff7ff
and ecx, 0x800
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 3
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x81c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov eax, dword [eax]
cdq
mov dword [ecx + 0x820], eax
mov eax, ebx
mov dword [ecx + 0x824], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xf7ffffff
and ecx, 0x8000000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xff7fffff
and ecx, 0x800000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffbfffff
and ecx, sym.MZ_HL_sLuV_xIF_U._dUledvakk:hMqBRG_Y_wpH7Yb_
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfeffffff
and ecx, 0x1000000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
jl 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x5c4], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
and ecx, 7
pop edi
pop esi
mov dword [eax + 0x5c8], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
cmp dword [eax], ebx
je 0x45820a
and dword [ecx + 0xa98], 0xefffffff
mov eax, 2
pop edi
mov dword [ecx + 0x828], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 1
pop edi
mov dword [ecx + 0x828], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cdq
mov edi, eax
mov ecx, edx
mov dword [ebp + 0xc], ecx
cmp ecx, 0xffffffff
jl 0x45a7d9
jg 0x45823f
cmp edi, 0xffffffff
jb 0x45a7d9
mov esi, dword [ebp + 8]
cmp dword [esi + 0x5dc], ecx
jg 0x458278
jl 0x458254
cmp dword [esi + 0x5d8], edi
jae 0x458278
mov eax, dword [esi + 0x5cc]
lea edx, [esi + 0xa2c]
cmp eax, dword [edx]
jne 0x458278
push 0
push edx
call fcn.00457d30
mov ecx, dword [ebp + 0xc]
add esp, 8
mov dword [esi + 0x5cc], ebx
mov dword [esi + 0x5d8], edi
mov eax, ebx
pop edi
mov dword [esi + 0x5dc], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffffffdf
and ecx, 0x20
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
je case.0x457dd5.91
mov eax, dword [ebp + 8]
pop edi
pop esi
and dword [eax + 0xa98], 0xcfffffff
mov dword [eax + 0x828], 1
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 3
jl 0x4582ff
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x82c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
test edx, edx
jne 0x45832c
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x5b4], ebx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov eax, edx
shr eax, 4
movzx eax, al
shl eax, 2
xor eax, dword [esi + 0xd0c]
and eax, 4
xor dword [esi + 0xd0c], eax
test dl, 0x10
je 0x458354
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
nop dword [eax]
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x45837d
cmp ecx, 0x1f
jl 0x458360
pop edi
pop esi
mov eax, 4
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [esi + 0x5b4], edx
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffffbff
and ecx, 0x400
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 0xffff
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x59c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
test edx, edx
jne 0x458400
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x5b8], ebx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov eax, edx
shr eax, 4
movzx eax, al
shl eax, 2
xor eax, dword [esi + 0xd1c]
and eax, 4
xor dword [esi + 0xd1c], eax
test dl, 0x10
je 0x458428
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
nop dword [eax]
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x45844d
cmp ecx, 0x1f
jl 0x458430
pop edi
pop esi
mov eax, 4
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [esi + 0x5b8], edx
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 7
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x8dc], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
sub eax, 0
je 0x4584ad
sub eax, 1
jne case.0x45a70b.30118
mov eax, dword [ebp + 8]
pop edi
pop esi
or dword [eax + 0xa9c], 0x100
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
and dword [eax + 0xa9c], 0xfffffeff
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffffdfff
and ecx, 0x2000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffffefff
and ecx, 0x1000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 3
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x900], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffeffff
and ecx, 0x10000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffff7fff
and ecx, 0x8000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffdffff
and ecx, 0x20000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 2
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x908], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffbffff
and ecx, 0x40000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 2
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x904], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
sub eax, 0
je 0x458693
sub eax, 1
je 0x45867d
sub eax, 1
jne case.0x45a70b.30118
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x90c], 2
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x90c], 1
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x90c], ebx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45a7d9
mov ecx, dword [ebp + 8]
cdq
pop edi
pop esi
mov dword [ecx + 0x658], eax
mov eax, ebx
mov dword [ecx + 0x65c], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x660], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x664], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 0xffff
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x5b0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
cmp eax, 0x20c49b
jg 0x45a7d9
imul ecx, eax, 0x3e8
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x638], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x638], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
cmp eax, 0x20c49b
jg 0x45a7d9
imul ecx, eax, 0x3e8
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x63c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x63c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45a7d9
mov ecx, dword [ebp + 8]
cdq
pop edi
pop esi
mov dword [ecx + 0x678], eax
mov eax, ebx
mov dword [ecx + 0x67c], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
push 0
lea eax, [esi + 0x9d8]
push eax
call fcn.00457d30
push esi
call fcn.00462d80
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffffffbf
and ecx, 0x40
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
cmp eax, 0xffff
jg 0x45a7d9
push eax
call fcn.0046a030
mov ecx, dword [ebp + 8]
add esp, 4
pop edi
mov word [ecx + 0x5e0], ax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
cmp eax, 0xffff
jg 0x45a7d9
push eax
call fcn.0046a020
mov ecx, dword [ebp + 8]
add esp, 4
pop edi
mov dword [ecx + 0x5e4], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
xor edx, edx
mov ecx, dword [ebp + 8]
cmp dword [eax], edx
mov eax, dword [ecx + 0x854]
setne dl
and eax, 0xfffffffe
or edx, eax
mov dword [ecx + 0x854], edx
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x457dd5.91
mov eax, dword [ecx + 0x26c]
xor eax, edx
and eax, 1
xor dword [ecx + 0x26c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
mov eax, dword [eax]
and al, 3
movzx edx, al
mov eax, dword [ecx + 0x854]
neg edx
sbb edx, edx
and eax, 0xfffffffd
and edx, 2
or edx, eax
mov dword [ecx + 0x854], edx
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x457dd5.91
mov eax, dword [ecx + 0x26c]
xor eax, edx
and eax, 2
xor dword [ecx + 0x26c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 2
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov edx, dword [ebp + 8]
pop edi
pop esi
cmp dword [eax], ecx
mov eax, dword [edx + 0x880]
setne cl
and eax, 0xfffffffe
or ecx, eax
mov eax, ebx
mov dword [edx + 0x880], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
cmp esi, 0x80000
jle 0x458984
mov esi, 0x80000
jmp 0x45899a
cmp esi, 1
jge 0x458990
mov esi, 0x4000
jmp 0x45899a
mov eax, 0x400
cmp esi, eax
cmovl esi, eax
mov edi, dword [ebp + 8]
cmp esi, dword [edi + 0x8e4]
je 0x4589d6
lea eax, [esi + 1]
push eax
push dword [edi + 0xc64]
call dword [0x64b02c]
add esp, 8
test eax, eax
jne 0x4589d0
mov dword [edi + 0x8e4], esi
mov ebx, 0x1b
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0xc64], eax
mov dword [edi + 0x8e4], esi
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffffffb
and ecx, 4
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x45a7d9
mov ecx, dword [ebp + 8]
cdq
pop edi
pop esi
mov dword [ecx + 0x8f8], eax
mov eax, ebx
mov dword [ecx + 0x8fc], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 3
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x91c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 2
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x8f4], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffffff7
and ecx, 8
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xffffffef
and ecx, 0x10
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xffffffdf
and ecx, 0x20
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0x854]
neg ecx
sbb ecx, ecx
and eax, 0xfffffff7
and ecx, 8
or ecx, eax
mov eax, dword [edx + 0x8a8]
xor eax, ecx
mov dword [edx + 0x854], ecx
and eax, 8
xor dword [edx + 0x8a8], eax
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov edx, dword [ebp + 8]
mov esi, 0x40
pop edi
cmp dword [eax], ecx
mov eax, dword [edx + 0xa9c]
cmove ecx, esi
and eax, 0xffffffbf
or ecx, eax
mov eax, ebx
pop esi
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov edx, dword [ebp + 8]
mov esi, pe_nt_image_headers32
pop edi
cmp dword [eax], ecx
mov eax, dword [edx + 0xa9c]
cmove ecx, esi
and eax, 0xffffff7f
or ecx, eax
mov eax, ebx
pop esi
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 0x1ff
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x920], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
cmp ecx, 0x1ff
jg 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x924], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa30], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa34], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa38], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
dec eax
cmp eax, 0xa
ja case.default.0x458c3d
jmp dword [eax*4 + 0x45aa24]
mov eax, dword [ebp + 8]
mov ecx, 1
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 2
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 3
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 4
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 5
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 6
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 7
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 8
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 9
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 0xa
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, 0xb
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
xor ecx, ecx
pop edi
pop esi
mov dword [eax + 0xa40], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xf68], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffffbff
and ecx, 0x400
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa58], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x2711
jg 0x45931c
je 0x459305
lea eax, [edx - 0xd4]
cmp eax, 0x4c
ja case.0x45a70b.30118
movzx eax, byte [eax + 0x45aacc]
jmp dword [eax*4 + 0x45aa50]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xffdfffff
and ecx, 0x200000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa98]
neg ecx
sbb ecx, ecx
and eax, 0xfffffff7
and ecx, 8
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x20
mov eax, 0x884
mov ecx, 0x830
cmovne ecx, eax
mov eax, dword [ebp + 0x10]
add ecx, dword [ebp + 8]
mov eax, dword [eax]
movzx edx, ax
and eax, 0xffff0000
cmp edx, 8
jae 0x45a7d9
cmp eax, 0x7ffff
ja 0x45a7d9
pop edi
mov dword [ecx + 4], eax
mov eax, ebx
pop esi
mov dword [ecx], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
pop edi
pop esi
movzx eax, byte [eax]
shl eax, 4
xor eax, dword [ecx + 0xa98]
and eax, 0x10
xor dword [ecx + 0xa98], eax
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa68], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
cmp edx, 1
jg 0x45a7d9
mov ecx, dword [ebp + 8]
neg edx
pop edi
sbb edx, edx
and edx, 0x2000000
mov eax, dword [ecx + 0xa9c]
and eax, 0xfdffffff
or edx, eax
mov eax, ebx
pop esi
mov dword [ecx + 0xa9c], edx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ebx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5bc], ebx
and ebx, 0xfffffffa
neg ebx
sbb ebx, ebx
and ebx, 4
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x640], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xffefffff
and ecx, 0x100000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
xor edx, edx
mov ecx, dword [ebp + 8]
cmp dword [eax], edx
mov eax, dword [ecx + 0x8a8]
setne dl
and eax, 0xfffffffe
or edx, eax
mov dword [ecx + 0x8a8], edx
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x457dd5.91
mov eax, dword [ecx + 0x294]
xor eax, edx
and eax, 1
xor dword [ecx + 0x294], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
mov eax, dword [eax]
and al, 3
movzx edx, al
mov eax, dword [ecx + 0x8a8]
neg edx
sbb edx, edx
and eax, 0xfffffffd
and edx, 2
or edx, eax
mov dword [ecx + 0x8a8], edx
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x457dd5.91
mov eax, dword [ecx + 0x294]
xor eax, edx
and eax, 2
xor dword [ecx + 0x294], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00462560
test al, al
jne 0x45900d
pop edi
mov ebx, 4
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
mov eax, dword [ecx + 0x854]
neg edx
sbb edx, edx
and eax, 0xfffffffb
and edx, 4
or edx, eax
mov dword [ecx + 0x854], edx
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x457dd5.91
mov eax, dword [ecx + 0x26c]
xor eax, edx
and eax, 4
xor dword [ecx + 0x26c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00462840
test al, al
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0x880]
neg ecx
sbb ecx, ecx
and eax, 0xfffffffd
and ecx, 2
or ecx, eax
mov eax, ebx
mov dword [edx + 0x880], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0x459097
mov eax, 0x200000
jmp 0x4590a1
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov esi, dword [ebp + 8]
push dword [esi + 0xc68]
mov dword [esi + 0x8e8], eax
call dword [0x64b028]
add esp, 4
mov dword [esi + 0xc68], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov eax, dword [eax]
movzx ecx, al
and eax, 2
and ecx, 1
or ecx, eax
mov eax, dword [edx + 0x880]
and eax, 0xfffffff3
shl ecx, 2
or ecx, eax
mov eax, ebx
mov dword [edx + 0x880], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov eax, dword [eax]
movzx ecx, al
and eax, 2
and ecx, 1
or ecx, eax
mov eax, dword [edx + 0x8d4]
and eax, 0xfffffff3
shl ecx, 2
or ecx, eax
mov eax, ebx
mov dword [edx + 0x8d4], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffffdff
and ecx, 0x200
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffff7ff
and ecx, 0x800
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa5c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa60], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xffff7fff
and ecx, 0x8000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffeffff
and ecx, 0x10000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffdffff
and ecx, 0x20000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x644], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xfffbffff
and ecx, 0x40000
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [edx + 0xa9c]
neg ecx
sbb ecx, ecx
and eax, 0xffbfffff
and ecx, sym.MZ_HL_sLuV_xIF_U._dUledvakk:hMqBRG_Y_wpH7Yb_
or ecx, eax
mov eax, ebx
mov dword [edx + 0xa9c], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0xa80], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
js 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x64c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5a0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x27f4
jg 0x45a022
je 0x45a00b
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0x45a70b.30118
movzx eax, byte [edx + 0x45ac44]
jmp dword [eax*4 + 0x45ab1c]
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9ac
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9c0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9bc
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x97c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
je 0x459414
cmp byte [eax], bl
jne 0x459414
call fcn.0046b200
mov esi, eax
test esi, esi
jne 0x4593f0
pop edi
mov ebx, 0x1b
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
add eax, 0x950
push esi
push eax
call fcn.00457d30
push esi
mov ebx, eax
call dword [0x64b028]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
mov eax, dword [ebp + 8]
add eax, 0x950
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov ecx, dword [eax]
mov dword [ebp + 0xc], ecx
test ecx, ecx
je 0x4594ce
mov edi, dword [esi + 0x5d8]
mov eax, edi
mov edx, dword [esi + 0x5dc]
and eax, edx
cmp eax, 0xffffffff
je 0x4594ce
test edx, edx
ja 0x4594a2
jb 0x459462
cmp edi, 0xffffffff
ja 0x4594a2
lea eax, [esi + 0xa2c]
push 0
push eax
call fcn.00457d30
mov ecx, dword [esi + 0x5d8]
add esp, 8
mov edx, dword [esi + 0x5dc]
mov eax, ecx
or eax, edx
je 0x45948a
mov dword [ebp - 4], edx
jmp 0x459492
mov ecx, 1
mov dword [ebp - 4], ebx
push ecx
call dword [0x64b024]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4594a9
mov ebx, 0x1b
jmp 0x4594e0
mov ecx, dword [esi + 0x5d8]
mov eax, ecx
or eax, dword [esi + 0x5dc]
je 0x4594c6
push ecx
push dword [ebp + 0xc]
push edi
call fcn.005aed80
add esp, 0xc
mov dword [esi + 0xa2c], edi
jmp 0x4594e0
push ecx
lea eax, [esi + 0xa2c]
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
mov eax, dword [esi + 0xa2c]
pop edi
mov dword [esi + 0x5cc], eax
mov eax, ebx
mov dword [esi + 0x828], 2
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
push 0
mov eax, dword [eax]
mov dword [esi + 0x5cc], eax
lea eax, [esi + 0xa2c]
push eax
call fcn.00457d30
add esp, 8
mov dword [esi + 0x828], 2
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov eax, dword [eax]
and dword [ecx + 0xa98], 0xefffffff
mov dword [ecx + 0x688], eax
mov eax, ebx
mov dword [ecx + 0x828], 3
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 8]
test byte [edi + 0xab0], 2
je 0x459584
push dword [edi + 0xaa4]
call dword [0x64b028]
add esp, 4
mov dword [edi + 0xaa4], ebx
and dword [edi + 0xab0], 0xfffffffd
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x98c]
push dword [eax]
push esi
call fcn.00457d30
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xaa4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9c4
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x680], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x8f0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x93c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
je case.0x457dd5.91
mov esi, dword [ebp + 8]
push eax
push dword [esi + 0xaa8]
call fcn.0045b0e0
add esp, 8
test eax, eax
jne 0x45965a
push dword [esi + 0xaa8]
call fcn.0045b120
add esp, 4
mov dword [esi + 0xaa8], ebx
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [esi + 0xaa8], eax
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
push dword [eax]
lea eax, [esi + 0x940]
push eax
call fcn.00457d30
mov ebx, eax
mov eax, dword [esi + 0xa98]
shr eax, 5
and al, 1
movzx eax, al
push eax
push dword [esi + 0xab4]
push 0
push esi
call fcn.0045eb90
add esp, 0x18
mov dword [esi + 0xab4], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edi, dword [eax]
test edi, edi
je case.0x457dd5.91
push 0x5d35c0
push edi
call fcn.0046afd0
add esp, 8
test eax, eax
je 0x459703
mov esi, dword [ebp + 8]
push 2
push 2
push esi
call fcn.0046b520
push dword [esi + 0xab4]
call fcn.0045e930
push 2
push esi
call fcn.0046b560
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.SESS
push edi
call fcn.0046afd0
add esp, 8
test eax, eax
je 0x459741
mov esi, dword [ebp + 8]
push 2
push 2
push esi
call fcn.0046b520
push dword [esi + 0xab4]
call fcn.0045e970
push 2
push esi
call fcn.0046b560
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.FLUSH
push edi
call fcn.0046afd0
add esp, 8
test eax, eax
je 0x459769
push 0
push dword [ebp + 8]
call fcn.0045edf0
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.RELOAD
push edi
call fcn.0046afd0
add esp, 8
test eax, eax
je 0x45978f
push dword [ebp + 8]
call fcn.0045ed60
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
cmp dword [esi + 0xab4], ebx
jne 0x4597af
push 1
push 0
push 0
push esi
call fcn.0045eb90
add esp, 0x10
mov dword [esi + 0xab4], eax
push edi
call dword [0x64b030]
mov edi, eax
add esp, 4
test edi, edi
je 0x459826
cmp dword [esi + 0xab4], ebx
je 0x459826
push 2
push 2
push esi
call fcn.0046b520
push 0xb
push edi
push str.Set_Cookie:
call fcn.0046b120
add esp, 0x18
test eax, eax
je 0x4597ee
mov byte [ebp + 0xc], 1
lea eax, [edi + 0xb]
jmp 0x4597f3
mov byte [ebp + 0xc], bl
mov eax, edi
push 1
push 0
push 0
push eax
push 0
push dword [ebp + 0xc]
push dword [esi + 0xab4]
push esi
call fcn.0045dc00
push 2
push esi
call fcn.0046b560
push edi
call dword [0x64b028]
add esp, 0x2c
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
mov ebx, 0x1b
call dword [0x64b028]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x944
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x980
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5a8], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x598], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
push dword [eax]
lea esi, [edi + 0x95c]
push esi
call fcn.00457d30
mov ecx, dword [esi]
add esp, 8
neg ecx
mov ebx, eax
mov eax, dword [edi + 0xa98]
sbb ecx, ecx
and eax, 0xffffbfff
and ecx, 0x4000
or ecx, eax
mov eax, ebx
mov dword [edi + 0xa98], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x954
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x958
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
push dword [eax]
lea esi, [edi + 0x978]
push esi
call fcn.00457d30
mov ecx, dword [esi]
add esp, 8
neg ecx
mov ebx, eax
mov eax, dword [edi + 0xa98]
sbb ecx, ecx
and eax, 0x7fffffff
and ecx, 0x80000000
or ecx, eax
mov eax, ebx
mov dword [edi + 0xa98], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5a4], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 8]
test byte [edi + 0xab0], 1
je 0x4599a9
push dword [edi + 0xaa0]
call dword [0x64b028]
add esp, 4
mov dword [edi + 0xaa0], ebx
and dword [edi + 0xab0], 0xfffffffe
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x990]
push dword [eax]
push esi
call fcn.00457d30
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xaa0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [ecx + 0x9e0]
push eax
lea eax, [ecx + 0x9dc]
push eax
mov eax, dword [ebp + 0x10]
push dword [eax]
call fcn.0045afe0
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9dc
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9e0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9e4
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa10
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x7fc], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x800], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x7f8], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x814], ecx
mov dword [eax + 0xaac], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x630], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [ecx + 0x9ec]
push eax
lea eax, [ecx + 0x9e8]
jmp 0x4599e0
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9e8
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9ec
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9f0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x988
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x594], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esi + 0x590], eax
test eax, eax
jne case.0x457dd5.91
push 2
call fcn.005b7480
add esp, 4
mov dword [esi + 0x590], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x620], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x634], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x92c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x934
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x960
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x970
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x968
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
test esi, esi
je case.0x457dd5.91
cmp byte [esi], bl
je case.0x457dd5.91
mov edi, dword [ebp + 8]
push esi
lea eax, [edi + 0x9d8]
push eax
call fcn.00457d30
mov ebx, eax
add esp, 8
test ebx, ebx
jne case.0x457dd5.91
push esi
push edi
call fcn.00462d70
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x94c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 8
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x868], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x99c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 1
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x994
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9c8
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9d0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x810], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
mov edi, dword [eax]
cmp dword [esi + 0x80], ebx
je 0x459e21
push 2
push 1
push esi
call fcn.0046b520
add esp, 0xc
cmp dword [esi + 0x74], 2
jne 0x459de1
mov dword [esi + 0x70], ebx
mov dword [esi + 0x74], ebx
mov ecx, dword [esi + 0x80]
mov eax, dword [ecx + 0x68]
cmp eax, dword [esi + 0xab4]
jne 0x459df8
mov dword [esi + 0xab4], ebx
mov eax, dword [ecx + 0x6c]
cmp eax, dword [esi + 0xc80]
jne 0x459e09
mov dword [esi + 0xc80], ebx
mov ecx, dword [ecx + 4]
mov eax, dword [esi + 0x80]
dec ecx
push 1
push esi
mov dword [eax + 4], ecx
call fcn.0046b560
add esp, 8
mov dword [esi + 0x80], edi
test edi, edi
je case.0x457dd5.91
push 2
push 1
push esi
call fcn.0046b520
mov eax, dword [esi + 0x80]
add esp, 0xc
mov ecx, dword [eax + 4]
mov eax, dword [esi + 0x80]
inc ecx
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x80]
test byte [ecx], 8
je 0x459e67
lea eax, [ecx + 0x50]
mov dword [esi + 0x74], 2
mov dword [esi + 0x70], eax
mov edx, ecx
cmp dword [ecx + 0x68], ebx
je 0x459e8d
push dword [esi + 0xab4]
call fcn.0045e8e0
mov ecx, dword [esi + 0x80]
add esp, 4
mov edx, ecx
mov eax, dword [ecx + 0x68]
mov dword [esi + 0xab4], eax
cmp dword [ecx + 0x6c], ebx
je 0x459ea4
mov eax, dword [ecx + 0x70]
mov dword [esi + 0x8d8], eax
mov eax, dword [edx + 0x6c]
mov dword [esi + 0xc80], eax
push 1
push esi
call fcn.0046b560
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x8ec], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x60c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x614], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x61c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa08
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa0c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa3c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9f4
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9f8
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9fc
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5ac], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xfec], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa54], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x684], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4e2b
jg 0x45a45a
je 0x45a414
add edx, 0xffffd80a
cmp edx, 0x3b
ja case.0x45a70b.30118
movzx eax, byte [edx + 0x45ad98]
jmp dword [eax*4 + 0x45ad24]
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9b0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00462df0
test al, al
je case.0x45a04a.10240
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9b4
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00462df0
test al, al
je case.0x45a04a.10240
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9b8
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa18
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
push 0
push dword [eax]
lea eax, [esi + 0x690]
push eax
call fcn.004609e0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne case.0x457dd5.91
and dword [esi + 0xa98], 0xefffffff
pop edi
mov dword [esi + 0x828], 4
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x984
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa00
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa04
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa8c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x930
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x938
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x964
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x974
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x96c
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 4
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9a4
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 4
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9a8
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9a0
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 1
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x998
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x9cc
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa7c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0x948
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
mov eax, dword [ebp + 8]
add eax, 0xa20
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
and dword [ecx + 0xa9c], 0xffdfffff
push dword [eax]
lea eax, [ecx + 0xa14]
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
or dword [ecx + 0xa9c], 0x200000
push dword [eax]
lea eax, [ecx + 0xa14]
push eax
call fcn.00457d30
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x818], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
push dword [eax]
lea esi, [edi + 0xa1c]
push esi
call fcn.00457d30
mov ecx, dword [esi]
add esp, 8
neg ecx
mov ebx, eax
mov eax, dword [edi + 0xa9c]
sbb ecx, ecx
and eax, 0xff7fffff
and ecx, 0x800000
or ecx, eax
mov eax, ebx
mov dword [edi + 0xa9c], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa90], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
mov eax, dword [eax]
mov ecx, dword [edx + 0xa98]
mov dword [edx + 0x5e8], eax
test eax, eax
jne 0x45a448
pop edi
and ecx, 0xfffffffd
mov dword [edx + 0x5e8], 0x5b5a75
pop esi
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
or ecx, 2
mov eax, ebx
pop esi
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4f30
jg 0x45a691
je 0x45a67a
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0x45a70b.30118
movzx eax, byte [edx + 0x45ae20]
jmp dword [eax*4 + 0x45add4]
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov edx, dword [eax]
mov dword [esi + 0x5f8], edx
mov ecx, dword [esi + 0xc3c]
mov eax, ecx
and eax, 0xfffffffe
or ecx, 1
test edx, edx
pop edi
cmove ecx, eax
mov eax, ebx
mov dword [esi + 0xc3c], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov edx, dword [eax]
mov dword [esi + 0x5fc], edx
jmp 0x45a49a
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x600], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5ec], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 8]
mov eax, dword [eax]
mov ecx, dword [edx + 0xa98]
mov dword [edx + 0x5f4], eax
test eax, eax
jne 0x45a52e
pop edi
and ecx, 0xfffffffe
mov dword [edx + 0x5f4], 0x5b76ea
pop esi
mov eax, ebx
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
or ecx, 1
mov eax, ebx
pop esi
mov dword [edx + 0xa98], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5d0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x624], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x628], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x62c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x604], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x64b040]
test byte [eax + 8], 8
je case.0x458de1.244
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x864], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x608], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x610], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x618], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0x5f0], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa48], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa4c], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa50], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa78], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x75a3
jg 0x45a6f2
je 0x45a6be
cmp edx, 0x4f3b
jne case.0x45a70b.30118
mov eax, dword [ebp + 0x10]
pop edi
pop esi
mov ecx, dword [eax]
mov eax, dword [ebp + 8]
mov dword [eax + 0xa94], ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
cmp edx, 0xffffffff
jl 0x45a7d9
jg 0x45a6da
cmp ecx, 0xffffffff
jb 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x658], ecx
mov dword [eax + 0x65c], edx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
add edx, 0xffff8a5c
cmp edx, 0x9a
ja case.0x45a70b.30118
movzx eax, byte [edx + 0x45af0c]
jmp dword [eax*4 + 0x45aef0]
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov eax, dword [edx]
mov dword [ecx + 0x820], eax
mov eax, dword [edx + 4]
mov dword [ecx + 0x824], eax
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x458228
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jl 0x45a7d9
jg 0x45a759
test ecx, ecx
jb 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x668], ecx
mov dword [eax + 0x66c], edx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jl 0x45a7d9
jg 0x45a783
test ecx, ecx
jb 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x670], ecx
mov dword [eax + 0x674], edx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
cmp edx, 0xffffffff
jl 0x45a7d9
jg 0x45a7af
cmp ecx, 0xffffffff
jb 0x45a7d9
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x678], ecx
mov dword [eax + 0x67c], edx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jg 0x45a7e5
jl 0x45a7d9
test ecx, ecx
jae 0x45a7e5
pop edi
pop esi
mov eax, 0x2b
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax + 0x8f8], ecx
mov dword [eax + 0x8fc], edx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, 0x30
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret