Function at 0x4b6510
Capabilities:
Check for software breakpoints
Encrypt data using chaskey
Inspect section memory permissions

Disassembly:
sub esp, 0xc
push ebx
push ebp
push esi
xor ebx, ebx
cmp eax, 0xd2
push edi
mov edi, ecx
mov esi, edx
mov dword [esp + 0x10], ebx
jg 0x4b439d
je 0x4b4381
lea ecx, [eax - 3]
cmp ecx, 0xcc
ja case.0x4b5c33.30118
movzx ecx, byte [ecx + 0x4b5ec4]
jmp dword [ecx*4 + 0x4b5d78]
mov edi, dword [edi]
cmp edi, 0xffffffff
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x8e0], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa58], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x1c
xor edx, dword [esi + 0xa8c]
and edx, 0x10000000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0x1d
xor eax, dword [esi + 0xa8c]
and eax, 0x20000000
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0x1a
xor ecx, dword [esi + 0xa8c]
and ecx, 0x4000000
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x15
xor edx, dword [esi + 0xa8c]
and edx, 0x200000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
setne al
shl eax, 0xf
xor eax, dword [esi + 0xa8c]
and eax, 0x8000
xor dword [esi + 0xa8c], eax
test dword [esi + 0xa8c], 0x8000
je 0x4b3671
or dword [esi + 0xae4], 0x10
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
and dword [esi + 0xae4], 0xffffffef
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0x18
xor ecx, dword [esi + 0xa8c]
and ecx, 0x1000000
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x10
xor edx, dword [esi + 0xa8c]
and edx, 0x10000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
setne al
shl eax, 0x19
xor eax, dword [esi + 0xa8c]
and eax, 0x2000000
xor dword [esi + 0xa8c], eax
test dword [esi + 0xa8c], 0x2000000
je 0x4b371b
and dword [esi + 0xa8c], 0xfeffffff
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x828], 5
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x828], 1
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 9
xor ecx, dword [esi + 0xa8c]
and ecx, 0x200
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
sub edi, ebx
je 0x4b3799
sub edi, 1
je 0x4b3783
sub edi, 1
jne case.0x4b5c33.30118
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x904], 2
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x904], 1
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x904], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x20c49b
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
imul edi, edi, 0x3e8
mov dword [esi + 0x650], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x654], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0xd
xor edx, dword [esi + 0xa8c]
and edx, 0x2000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0xc
xor eax, dword [esi + 0xa8c]
and eax, 0x1000
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 3
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x900], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 2
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x910], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0xb
xor ecx, dword [esi + 0xa8c]
and ecx, 0x800
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 3
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x81c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cdq
pop edi
mov dword [esi + 0x820], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 0x824], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x17
xor edx, dword [esi + 0xa8c]
and edx, 0x800000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0x13
xor eax, dword [esi + 0xa8c]
and eax, 0x80000
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0x12
xor ecx, dword [esi + 0xa8c]
and ecx, 0x40000
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x14
xor edx, dword [esi + 0xa8c]
and edx, 0x100000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xffffffff
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x5cc], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
and edi, 7
mov dword [esi + 0x5d0], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp dword [edi], ebx
je 0x4b371b
and dword [esi + 0xa8c], 0xfeffffff
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x828], 2
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cdq
mov edi, edx
cmp edi, 0xffffffff
mov ebp, eax
jg 0x4b39f4
jl 0x4b3d8a
cmp ebp, 0xffffffff
jb 0x4b3d8a
mov eax, dword [esi + 0x5e4]
cmp eax, edi
jg 0x4b3a2e
jl 0x4b3a0a
mov ecx, dword [esi + 0x5e0]
cmp ecx, ebp
jae 0x4b3a2e
mov edx, dword [esi + 0x5d4]
cmp edx, dword [esi + 0xa20]
lea eax, [esi + 0xa20]
jne 0x4b3a2e
push ebx
push eax
call fcn.004b3420
add esp, 8
mov dword [esi + 0x5d4], ebx
mov eax, dword [esp + 0x10]
mov dword [esi + 0x5e4], edi
pop edi
mov dword [esi + 0x5e0], ebp
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 5
xor eax, dword [esi + 0xa8c]
and eax, 0x20
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp dword [edi], ebx
je case.0x4b3558.91
and dword [esi + 0xa8c], 0xfcffffff
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x828], 1
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
cmp edi, 3
jl 0x4b3aaf
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
mov dword [esi + 0x82c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cmp eax, ebx
jne 0x4b3ad9
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5bc], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, eax
shr ecx, 2
xor ecx, dword [esi + 0xd04]
and ecx, 4
xor dword [esi + 0xd04], ecx
test al, 0x10
je 0x4b3af7
and eax, 0xffffffef
or eax, 2
and eax, 0xffffffdb
xor ecx, ecx
lea esp, [esp]
mov edx, 1
shl edx, cl
inc ecx
and edx, eax
test edx, edx
jne 0x4b3b20
cmp ecx, 0x1f
jl 0x4b3b00
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0x5bc], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0xa
xor eax, dword [esi + 0xa8c]
and eax, 0x400
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xffff
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x5a4], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cmp eax, ebx
jne 0x4b3b91
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5c0], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, eax
shr ecx, 2
xor ecx, dword [esi + 0xd14]
and ecx, 4
xor dword [esi + 0xd14], ecx
test al, 0x10
je 0x4b3baf
and eax, 0xffffffef
or eax, 2
and eax, 0xffffffdb
xor ecx, ecx
mov edx, 1
shl edx, cl
inc ecx
and edx, eax
test edx, edx
jne 0x4b3bd2
cmp ecx, 0x1f
jl 0x4b3bb4
pop edi
pop esi
pop ebp
lea eax, [edx + 4]
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0x5c0], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 7
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x8dc], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
sub edi, ebx
je 0x4b3c26
sub edi, 1
jne case.0x4b5c33.30118
or dword [esi + 0xa90], 0x200
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
and dword [esi + 0xa90], 0xfffffdff
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esi + 0xa8c]
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
and ecx, 0x7fffffff
shl eax, 0x1f
or eax, ecx
mov dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x1e
xor edx, dword [esi + 0xa8c]
and edx, 0x40000000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
xor eax, dword [esi + 0xa90]
and eax, 1
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 2
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x91c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 5
xor ecx, dword [esi + 0xa90]
and ecx, 0x20
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cmp eax, 0xffffffff
jl 0x4b3d8a
cdq
pop edi
mov dword [esi + 0x658], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 0x65c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x660], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x664], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xffff
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x5b8], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x20c49b
ja 0x4b3d8a
imul edi, edi, 0x3e8
mov eax, dword [esp + 0x10]
mov dword [esi + 0x640], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jge 0x4b3d72
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x20c49b
ja 0x4b3d8a
imul edi, edi, 0x3e8
mov eax, dword [esp + 0x10]
mov dword [esi + 0x644], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jge 0x4b3da7
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cmp eax, 0xffffffff
jl 0x4b3d8a
cdq
pop edi
mov dword [esi + 0x678], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 0x67c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
lea edx, [esi + 0x9d8]
push ebx
push edx
call fcn.004b3420
push esi
call fcn.004be970
add esp, 0xc
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 6
xor eax, dword [esi + 0xa8c]
and eax, 0x40
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xffff
ja 0x4b3d8a
push edi
call fcn.004c1c10
add esp, 4
pop edi
mov word [esi + 0x5e8], ax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xffff
ja 0x4b3d8a
push edi
call fcn.004c1c20
add esp, 4
pop edi
mov dword [esi + 0x5ec], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor ecx, ecx
cmp dword [edi], ebx
setne cl
xor ecx, dword [esi + 0x854]
and ecx, 1
xor dword [esi + 0x854], ecx
mov eax, dword [esi + 0x854]
mov esi, dword [esi + 8]
cmp esi, ebx
je case.0x4b3558.91
mov edx, dword [esi + 0x258]
xor edx, eax
mov eax, dword [esp + 0x10]
pop edi
and edx, 1
xor dword [esi + 0x258], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 1
jne 0x4b3eec
push str.CURLOPT_SSL_VERIFYHOST_no_longer_supports_1_as_value_
push esi
call fcn.004c2150
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp edi, ebx
setne al
add eax, eax
xor eax, dword [esi + 0x854]
and eax, 2
xor dword [esi + 0x854], eax
mov eax, dword [esi + 0x854]
mov esi, dword [esi + 8]
cmp esi, ebx
je case.0x4b3558.91
mov ecx, dword [esi + 0x258]
xor ecx, eax
mov eax, dword [esp + 0x10]
pop edi
and ecx, 2
xor dword [esi + 0x258], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [0x659f90]
test byte [edx + 8], 2
je case.0x4b43c4.244
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
xor eax, dword [esi + 0x880]
and eax, 1
xor dword [esi + 0x880], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x80000
jle 0x4b3f75
mov edi, 0x80000
jmp 0x4b3f8e
cmp edi, 1
jge 0x4b3f81
mov edi, 0x4000
jmp 0x4b3f8e
cmp edi, 0x400
jge 0x4b3f8e
mov edi, 0x400
cmp edi, dword [esi + 0x8e4]
je 0x4b3fce
mov edx, dword [esi + 0xc5c]
lea ecx, [edi + 1]
push ecx
push edx
call dword [0x659f44]
add esp, 8
cmp eax, ebx
jne 0x4b3fc8
mov dword [esi + 0x8e4], edi
pop edi
pop esi
mov dword [esp + 8], 0x1b
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov dword [esi + 0xc5c], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0x8e4], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
add eax, eax
xor eax, dword [esi + 0xa90]
and eax, 2
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
cmp eax, ebx
jl 0x4b3d8a
cdq
mov dword [esi + 0x8f8], eax
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x8fc], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 3
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x914], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 2
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x918], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 2
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x8f4], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor ecx, ecx
cmp dword [edi], ebx
mov eax, dword [esp + 0x10]
setne cl
pop edi
add ecx, ecx
add ecx, ecx
add ecx, ecx
xor ecx, dword [esi + 0xa90]
and ecx, 8
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 4
xor edx, dword [esi + 0xa90]
and edx, 0x10
xor dword [esi + 0xa90], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 6
xor eax, dword [esi + 0xa90]
and eax, 0x40
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esi + 0x8a8]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
add ecx, ecx
add ecx, ecx
add ecx, ecx
xor ecx, dword [esi + 0x854]
and ecx, 8
xor dword [esi + 0x854], ecx
mov eax, dword [esi + 0x854]
xor edx, eax
mov eax, dword [esp + 0xc]
and edx, 8
xor dword [esi + 0x8a8], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
sete al
shl eax, 7
xor eax, dword [esi + 0xa90]
and eax, 0x80
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
sete cl
shl ecx, 8
xor ecx, dword [esi + 0xa90]
and ecx, 0x100
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x1ff
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x920], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x1ff
ja 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x924], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0xf
ja 0x4b3d8a
push edi
call fcn.004c1c30
add esp, 4
pop edi
mov dword [esi + 0xa24], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa28], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0xa2c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
lea eax, [edi - 1]
cmp eax, 0xa
ja case.default.0x4b421a
jmp dword [eax*4 + 0x4b5f94]
mov eax, 1
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 2
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 3
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 4
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 5
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 6
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 7
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 8
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 9
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 0xa
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, 0xb
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
pop edi
mov dword [esi + 0xa34], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xf10], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xf10], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0xb
xor eax, dword [esi + 0xa90]
and eax, 0x800
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa4c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp eax, 0x2711
jg 0x4b490b
je 0x4b48f7
lea ecx, [eax - 0xd4]
cmp ecx, 0x49
ja case.0x4b5c33.30118
movzx ecx, byte [ecx + 0x4b6044]
jmp dword [ecx*4 + 0x4b5fc0]
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x11
xor edx, dword [esi + 0xa8c]
and edx, 0x20000
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
add eax, eax
add eax, eax
add eax, eax
xor eax, dword [esi + 0xa8c]
and eax, 8
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
lea ecx, [esi + 0x830]
cmp eax, 0x20
je 0x4b442c
lea ecx, [esi + 0x884]
mov edi, dword [edi]
mov eax, edi
and eax, 0xffff
and edi, 0xffff0000
cmp eax, 7
ja 0x4b3d8a
cmp edi, 0x7ffff
ja 0x4b3d8a
mov dword [ecx + 4], edi
pop edi
pop esi
pop ebp
mov dword [ecx], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
shl ecx, 4
xor ecx, dword [esi + 0xa8c]
pop edi
and ecx, 0x10
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa5c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 1
jg 0x4b3d8a
mov eax, dword [esp + 0x10]
xor edx, edx
cmp edi, ebx
setne dl
pop edi
shl edx, 0x1a
xor edx, dword [esi + 0xa90]
and edx, 0x4000000
xor dword [esi + 0xa90], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov dword [esi + 0x5c4], edi
test edi, 0xfffffffa
je case.0x4b3558.91
pop edi
pop esi
mov dword [esp + 8], 4
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x648], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0x15
xor eax, dword [esi + 0xa90]
and eax, 0x200000
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor ecx, ecx
cmp dword [edi], ebx
setne cl
xor ecx, dword [esi + 0x8a8]
and ecx, 1
xor dword [esi + 0x8a8], ecx
mov eax, dword [esi + 0x8a8]
mov esi, dword [esi + 8]
cmp esi, ebx
je case.0x4b3558.91
mov edx, dword [esi + 0x280]
xor edx, eax
mov eax, dword [esp + 0x10]
pop edi
and edx, 1
xor dword [esi + 0x280], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 1
je 0x4b3ed1
xor eax, eax
cmp edi, ebx
setne al
add eax, eax
xor eax, dword [esi + 0x8a8]
and eax, 2
xor dword [esi + 0x8a8], eax
mov eax, dword [esi + 0x8a8]
mov esi, dword [esi + 8]
cmp esi, ebx
je case.0x4b3558.91
mov ecx, dword [esi + 0x280]
xor ecx, eax
mov eax, dword [esp + 0x10]
pop edi
and ecx, 2
xor dword [esi + 0x280], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
call fcn.004bf030
test eax, eax
je case.0x4b43c4.244
xor edx, edx
cmp dword [edi], ebx
setne dl
add edx, edx
add edx, edx
xor edx, dword [esi + 0x854]
and edx, 4
xor dword [esi + 0x854], edx
mov eax, dword [esi + 0x854]
mov esi, dword [esi + 8]
cmp esi, ebx
je case.0x4b3558.91
mov ecx, dword [esi + 0x258]
xor ecx, eax
mov eax, dword [esp + 0x10]
pop edi
and ecx, 4
xor dword [esi + 0x258], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
call fcn.004bf040
test eax, eax
je case.0x4b43c4.244
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
add edx, edx
xor edx, dword [esi + 0x880]
and edx, 2
xor dword [esi + 0x880], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, 0x200000
jle 0x4b4667
mov edi, 0x200000
jmp 0x4b4674
cmp edi, 0x4000
jge 0x4b4674
mov edi, 0x4000
mov eax, dword [esi + 0xc60]
push eax
mov dword [esi + 0x8e8], edi
call dword [0x659f40]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
mov dword [esi + 0xc60], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov eax, dword [esp + 0x10]
lea ecx, [edi*4]
xor ecx, dword [esi + 0x880]
pop edi
and ecx, 0xc
xor dword [esi + 0x880], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
lea edx, [edi*4]
xor edx, dword [esi + 0x8d4]
lea eax, [edi*4]
and edx, 4
xor dword [esi + 0x8d4], edx
xor eax, dword [esi + 0x8d4]
pop edi
and eax, 8
xor dword [esi + 0x8d4], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0xa
xor ecx, dword [esi + 0xa90]
and ecx, 0x400
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0xc
xor edx, dword [esi + 0xa90]
and edx, 0x1000
xor dword [esi + 0xa90], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa50], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa54], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0xe
xor eax, dword [esi + 0xa90]
and eax, 0x4000
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0xf
xor ecx, dword [esi + 0xa90]
and ecx, 0x8000
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 0x10
xor edx, dword [esi + 0xa90]
and edx, 0x10000
xor dword [esi + 0xa90], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0x11
xor eax, dword [esi + 0xa90]
and eax, 0x20000
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0x12
xor ecx, dword [esi + 0xa90]
and ecx, 0x40000
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor edx, edx
cmp dword [edi], ebx
pop edi
setne dl
shl edx, 8
xor edx, dword [esi + 0xa8c]
and edx, 0x100
xor dword [esi + 0xa8c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0x64c], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
xor eax, eax
cmp dword [edi], ebx
pop edi
setne al
shl eax, 0x13
xor eax, dword [esi + 0xa90]
and eax, 0x80000
xor dword [esi + 0xa90], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [edi], ebx
pop edi
setne cl
shl ecx, 0x17
xor ecx, dword [esi + 0xa90]
and ecx, 0x800000
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
jl 0x4b3d8a
mov eax, dword [esp + 0x10]
mov dword [esi + 0xa74], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5a8], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp eax, 0x27b4
jg 0x4b5298
je 0x4b5284
add eax, 0xffffd8ee
cmp eax, 0x93
ja case.0x4b5c33.30118
movzx eax, byte [eax + 0x4b6158]
jmp dword [eax*4 + 0x4b6090]
mov ecx, dword [edi]
push ecx
add esi, 0x9ac
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9c0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x9bc
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x97c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
je 0x4b4a02
cmp byte [edi], bl
jne 0x4b4a02
call fcn.004c1470
mov edi, eax
cmp edi, ebx
jne 0x4b49db
pop edi
pop esi
mov dword [esp + 8], 0x1b
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
push edi
add esi, 0x950
push esi
call fcn.004b3420
push edi
mov dword [esp + 0x1c], eax
call dword [0x659f40]
mov eax, dword [esp + 0x1c]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push edi
add esi, 0x950
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
lea eax, [esi + 0xa20]
push ebx
push eax
mov dword [esi + 0x5d4], edx
call fcn.004b3420
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
mov dword [esi + 0x828], 2
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
and dword [esi + 0xa8c], 0xfeffffff
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x688], ecx
mov dword [esi + 0x828], 3
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
test byte [esi + 0xaa8], 2
je 0x4b4a9a
mov edx, dword [esi + 0xa9c]
push edx
call dword [0x659f40]
add esp, 4
and dword [esi + 0xaa8], 0xfffffffd
mov dword [esi + 0xa9c], ebx
mov eax, dword [edi]
push eax
lea ebp, [esi + 0x98c]
push ebp
call fcn.004b3420
mov ecx, dword [ebp]
add esp, 8
pop edi
mov dword [esi + 0xa9c], ecx
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9c4
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x680], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x8f0], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x93c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
je case.0x4b3558.91
mov eax, dword [esi + 0xaa0]
push edi
push eax
call fcn.004b33a0
add esp, 8
cmp eax, ebx
jne 0x4b4b65
mov ecx, dword [esi + 0xaa0]
push ecx
call fcn.004b33e0
add esp, 4
pop edi
mov dword [esi + 0xaa0], ebx
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0xaa0], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
lea eax, [esi + 0x940]
push eax
call fcn.004b3420
mov ecx, dword [esi + 0xa8c]
mov edx, dword [esi + 0xaac]
shr ecx, 5
and ecx, 1
push ecx
push edx
push ebx
push esi
mov dword [esp + 0x28], eax
call fcn.004c0a80
add esp, 0x18
cmp eax, ebx
jne 0x4b4bb4
mov dword [esp + 0x10], 0x1b
pop edi
mov dword [esi + 0xaac], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
je case.0x4b3558.91
push 0x5e93a0
push edi
call fcn.004c0f50
add esp, 8
test eax, eax
je 0x4b4c0f
push 2
push 2
push esi
call fcn.004c10c0
mov eax, dword [esi + 0xaac]
push eax
call fcn.004c0da0
push 2
push esi
call fcn.004c1100
mov eax, dword [esp + 0x28]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.SESS
push edi
call fcn.004c0f50
add esp, 8
test eax, eax
je 0x4b4c4e
push 2
push 2
push esi
call fcn.004c10c0
mov ecx, dword [esi + 0xaac]
push ecx
call fcn.004c0680
push 2
push esi
call fcn.004c1100
mov eax, dword [esp + 0x28]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.FLUSH
push edi
call fcn.004c0f50
add esp, 8
test eax, eax
je 0x4b4c76
push ebx
push esi
call fcn.004c0e70
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.RELOAD
push edi
call fcn.004c0f50
add esp, 8
test eax, eax
je 0x4b4c9d
push esi
call fcn.004c0de0
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp dword [esi + 0xaac], ebx
jne 0x4b4cb8
push 1
push ebx
push ebx
push esi
call fcn.004c0a80
add esp, 0x10
mov dword [esi + 0xaac], eax
push edi
call dword [0x659f48]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x4b4d33
cmp dword [esi + 0xaac], ebx
je 0x4b4d33
push 2
push 2
push esi
call fcn.004c10c0
push 0xb
push edi
push str.Set_Cookie:
call fcn.004c10b0
add esp, 0x18
push 1
push ebx
push ebx
test eax, eax
je 0x4b4d02
mov eax, dword [esi + 0xaac]
lea edx, [edi + 0xb]
push edx
push ebx
push 1
push eax
jmp 0x4b4d0c
mov ecx, dword [esi + 0xaac]
push edi
push ebx
push ebx
push ecx
push esi
call fcn.004bf770
add esp, 0x20
push 2
push esi
call fcn.004c1100
push edi
call dword [0x659f40]
mov eax, dword [esp + 0x1c]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push edi
mov dword [esp + 0x14], 0x1b
call dword [0x659f40]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x944
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x980
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5b0], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5a0], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
lea ebp, [esi + 0x95c]
push ebp
call fcn.004b3420
add esp, 8
xor ecx, ecx
cmp dword [ebp], ebx
pop edi
setne cl
mov dword [esp + 0xc], eax
shl ecx, 0xe
xor ecx, dword [esi + 0xa8c]
and ecx, 0x4000
xor dword [esi + 0xa8c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5ac], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
test byte [esi + 0xaa8], 1
je 0x4b4e2a
mov eax, dword [esi + 0xa98]
push eax
call dword [0x659f40]
add esp, 4
and dword [esi + 0xaa8], 0xfffffffe
mov dword [esi + 0xa98], ebx
mov ecx, dword [edi]
push ecx
lea ebp, [esi + 0x990]
push ebp
call fcn.004b3420
mov edx, dword [ebp]
add esp, 8
pop edi
mov dword [esi + 0xa98], edx
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
lea ebx, [esi + 0x9e0]
add esi, 0x9dc
push esi
call fcn.004b3460
add esp, 4
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x7fc], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x800], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x7f8], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x638], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
lea ebx, [esi + 0x9ec]
add esi, 0x9e8
push esi
call fcn.004b3460
add esp, 4
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x988
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x59c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov dword [esi + 0x598], edi
cmp edi, ebx
jne case.0x4b3558.91
call fcn.004a7e20
add eax, 0x40
pop edi
mov dword [esi + 0x598], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x63c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x92c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x934
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x960
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x970
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x968
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
cmp edi, ebx
je case.0x4b3558.91
cmp byte [edi], bl
je case.0x4b3558.91
lea eax, [esi + 0x9d8]
push edi
push eax
call fcn.004b3420
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, ebx
jne case.0x4b3558.91
push edi
push esi
call fcn.004be960
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x94c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
lea ebp, [esi + 0x978]
push ebp
call fcn.004b3420
mov dword [esp + 0x18], eax
xor eax, eax
add esp, 8
cmp dword [ebp], ebx
pop edi
setne al
shl eax, 0x1b
xor eax, dword [esi + 0xa8c]
and eax, 0x8000000
xor dword [esi + 0xa8c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x659f90]
test byte [ecx + 8], 8
je case.0x4b43c4.244
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x868], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x99c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x659f90]
test byte [ecx + 8], 1
je case.0x4b43c4.244
mov edx, dword [edi]
push edx
add esi, 0x994
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x810], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov ebp, 3
cmp dword [esi + 0x8c], ebx
je 0x4b5184
push 2
push 1
push esi
call fcn.004c10c0
add esp, 0xc
cmp dword [esi + 0x80], ebp
jne 0x4b513e
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x80], ebx
mov eax, dword [esi + 0x8c]
mov ecx, dword [eax + 0x68]
cmp ecx, dword [esi + 0xaac]
jne 0x4b5155
mov dword [esi + 0xaac], ebx
mov edx, dword [eax + 0x6c]
cmp edx, dword [esi + 0xc78]
jne 0x4b5166
mov dword [esi + 0xc78], ebx
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x8c]
dec eax
push 1
push esi
mov dword [ecx + 4], eax
call fcn.004c1100
add esp, 8
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x8c], edi
cmp edi, ebx
je case.0x4b3558.91
push 2
push 1
push esi
call fcn.004c10c0
mov edx, dword [esi + 0x8c]
mov eax, dword [edx + 4]
mov ecx, dword [esi + 0x8c]
inc eax
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x8c]
add esp, 0xc
test byte [eax], 8
je 0x4b51c9
lea edx, [eax + 0x50]
mov dword [esi + 0x7c], edx
mov dword [esi + 0x80], ebp
cmp dword [eax + 0x68], ebx
je 0x4b51ec
mov eax, dword [esi + 0xaac]
push eax
call fcn.004c06f0
mov eax, dword [esi + 0x8c]
mov ecx, dword [eax + 0x68]
add esp, 4
mov dword [esi + 0xaac], ecx
cmp dword [eax + 0x6c], ebx
je 0x4b5209
mov edx, dword [eax + 0x70]
mov dword [esi + 0x8d8], edx
mov eax, dword [esi + 0x8c]
mov ecx, dword [eax + 0x6c]
mov dword [esi + 0xc78], ecx
push 1
push esi
call fcn.004c1100
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x8ec], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x954
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x958
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x614], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x61c], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp eax, 0x4e2b
jg 0x4b59b7
je 0x4b597b
add eax, 0xffffd84b
cmp eax, 0x77
ja case.0x4b5c33.30118
movzx ecx, byte [eax + 0x4b62c0]
jmp dword [ecx*4 + 0x4b61ec]
mov edx, dword [edi]
push edx
add esi, 0x9b0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
call fcn.004bf050
test eax, eax
je case.0x4b52be.10240
mov eax, dword [edi]
push eax
add esi, 0x9b4
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
call fcn.004bf050
test eax, eax
je case.0x4b52be.10240
mov ecx, dword [edi]
push ecx
add esi, 0x9b8
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0xa14
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ebx, dword [edi]
test ebx, ebx
je 0x4b5402
mov ecx, dword [esi + 0x5e0]
mov eax, dword [esi + 0x5e4]
mov edx, ecx
and edx, eax
cmp edx, 0xffffffff
je 0x4b5402
test eax, eax
jl 0x4b53d5
jg 0x4b5384
test ecx, ecx
jb 0x4b53d5
test eax, eax
jg 0x4b53d5
jl 0x4b538f
cmp ecx, 0xffffffff
ja 0x4b53d5
lea edi, [esi + 0xa20]
push 0
push edi
call fcn.004b3420
mov eax, dword [esi + 0x5e0]
mov ecx, dword [esi + 0x5e4]
mov edx, eax
add esp, 8
or edx, ecx
je 0x4b53b8
mov dword [esp + 0x18], ecx
jmp 0x4b53c5
mov eax, 1
mov dword [esp + 0x18], 0
push eax
call dword [0x659f3c]
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x4b53df
mov dword [esp + 0x10], 0x1b
jmp 0x4b5416
mov eax, dword [esi + 0x5e0]
or eax, dword [esi + 0x5e4]
je 0x4b53fe
mov ecx, dword [esi + 0x5e0]
push ecx
push ebx
push ebp
call fcn.004a26d0
add esp, 0xc
mov dword [edi], ebp
jmp 0x4b5416
lea edx, [esi + 0xa20]
push ebx
push edx
call fcn.004b3420
add esp, 8
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0xa20]
pop edi
mov dword [esi + 0x5d4], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 0x828], 2
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ebx
push ecx
lea edx, [esi + 0x690]
push edx
call fcn.004bdd70
add esp, 0xc
mov dword [esp + 0x10], eax
cmp eax, ebx
jne case.0x4b3558.91
and dword [esi + 0xa8c], 0xfeffffff
pop edi
mov dword [esi + 0x828], 4
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x684], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x984
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0xa00
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0xa04
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa80], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9dc
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x9e0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x9e4
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0xa10
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov eax, dword [esp + 0x10]
mov dword [esi + 0x814], edi
mov dword [esi + 0xaa4], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x9e8
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x9ec
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9f0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x628], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x930
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x938
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x964
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x974
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x96c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [0x659f90]
test byte [eax + 8], 4
je case.0x4b43c4.244
mov ecx, dword [edi]
push ecx
add esi, 0x9a4
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x659f90]
test byte [edx + 8], 4
je case.0x4b43c4.244
mov eax, dword [edi]
push eax
add esi, 0x9a8
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x9a0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x659f90]
test byte [edx + 8], 1
je case.0x4b43c4.244
mov eax, dword [edi]
push eax
add esi, 0x998
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x9c8
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9cc
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x9d0
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa70], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x624], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x948
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0xa08
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0xa0c
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0xa30], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
add esi, 0x9f4
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
add esi, 0x9f8
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
add esi, 0x9fc
push esi
call fcn.004b3420
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5b4], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xf94], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0xa48], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
push esi
call fcn.004bc4a0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
push edx
push esi
call fcn.004bc4a0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
push esi
call fcn.004bc4a0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
push ecx
push esi
call fcn.004bc4a0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x818], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
push eax
lea ebp, [esi + 0xa18]
push ebp
call fcn.004b3420
add esp, 8
xor ecx, ecx
cmp dword [ebp], ebx
pop edi
setne cl
mov dword [esp + 0xc], eax
shl ecx, 0x18
xor ecx, dword [esi + 0xa90]
and ecx, 0x1000000
xor dword [esi + 0xa90], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa84], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov dword [esi + 0x5f0], edi
cmp edi, ebx
jne 0x4b59a4
and dword [esi + 0xa8c], 0xfffffffd
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5f0], 0x49cd23
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
or dword [esi + 0xa8c], 2
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp eax, 0x4f30
jg 0x4b5bc3
je 0x4b5baf
add eax, 0xffffb1d4
cmp eax, 0xcf
ja case.0x4b5c33.30118
movzx eax, byte [eax + 0x4b6384]
jmp dword [eax*4 + 0x4b6338]
mov edi, dword [edi]
mov dword [esi + 0x600], edi
cmp edi, ebx
je 0x4b5a05
or dword [esi + 0xc34], 1
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
and dword [esi + 0xc34], 0xfffffffe
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov dword [esi + 0x604], edi
cmp edi, ebx
je 0x4b5a05
or dword [esi + 0xc34], 1
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x608], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5f4], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [edi]
mov dword [esi + 0x5fc], edi
cmp edi, ebx
jne 0x4b5a88
and dword [esi + 0xa8c], 0xfffffffe
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5fc], 0x49e9fd
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
or dword [esi + 0xa8c], 1
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x5d8], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x62c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x630], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x634], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x60c], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [0x659f90]
test byte [edx + 8], 8
je case.0x4b43c4.244
mov eax, dword [edi]
pop edi
mov dword [esi + 0x864], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x610], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x618], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0x620], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x5f8], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa3c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
pop edi
mov dword [esi + 0xa40], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa44], ecx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [edi]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0xa6c], edx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
cmp eax, 0x75a3
jg 0x4b5c1c
je 0x4b5beb
cmp eax, 0x4f3b
jne case.0x4b5c33.30118
mov eax, dword [edi]
pop edi
mov dword [esi + 0xa88], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp edi, 0xffffffff
jg 0x4b5c04
jl 0x4b3d8a
cmp eax, 0xffffffff
jb 0x4b3d8a
mov dword [esi + 0x65c], edi
pop edi
mov dword [esi + 0x658], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
add eax, 0xffff8a5c
cmp eax, 0x9a
ja case.0x4b5c33.30118
movzx ecx, byte [eax + 0x4b6470]
jmp dword [ecx*4 + 0x4b6454]
mov edx, dword [edi]
mov dword [esi + 0x820], edx
mov eax, dword [edi + 4]
pop edi
mov dword [esi + 0x824], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ebp, dword [edi]
mov edi, dword [edi + 4]
cmp edi, 0xffffffff
jg 0x4b5c70
jl 0x4b3d8a
cmp ebp, 0xffffffff
jb 0x4b3d8a
mov ecx, dword [esi + 0x5e4]
cmp ecx, edi
jg 0x4b3a2e
jl 0x4b5c8e
mov edx, dword [esi + 0x5e0]
cmp edx, ebp
jae 0x4b3a2e
mov ecx, dword [esi + 0x5d4]
cmp ecx, dword [esi + 0xa20]
lea eax, [esi + 0xa20]
jmp 0x4b3a1c
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp edi, ebx
jg 0x4b5cbc
jl 0x4b3d8a
cmp eax, ebx
jb 0x4b3d8a
mov dword [esi + 0x66c], edi
pop edi
mov dword [esi + 0x668], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp edi, ebx
jg 0x4b5ceb
jl 0x4b3d8a
cmp eax, ebx
jb 0x4b3d8a
mov dword [esi + 0x674], edi
pop edi
mov dword [esi + 0x670], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp edi, 0xffffffff
jg 0x4b5d1c
jl 0x4b3d8a
cmp eax, 0xffffffff
jb 0x4b3d8a
mov dword [esi + 0x67c], edi
pop edi
mov dword [esi + 0x678], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp edi, ebx
jg 0x4b5d4b
jl 0x4b3d8a
cmp eax, ebx
jb 0x4b3d8a
mov dword [esi + 0x8f8], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0x8fc], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov dword [esp + 0x10], 0x30
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 4]
test edx, edx
jne 0x4b651c
lea eax, [edx + 0x2b]
ret
mov eax, dword [esp + 8]
lea ecx, [esp + 0xc]
jmp 0x4b3520