Function at 0x496840
Capabilities:
Check for software breakpoints

Disassembly:
mov ecx, dword [esp + 8]
sub esp, 8
push ebx
push ebp
push esi
xor ebx, ebx
push edi
mov edi, dword [esp + 0x1c]
cmp ecx, 0xd2
jg 0x4974fd
je 0x4974e5
lea eax, [ecx - 3]
cmp eax, 0xcc
ja case.0x49946c.40296
movzx eax, byte [eax + 0x4996d0]
jmp dword [eax*4 + 0x499584]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x499414
mov dword [edi + 0x4ac], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x684], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e5], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e6], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e3], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6df], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [edi + 0x744]
mov edx, dword [eax]
test edx, edx
setne al
mov byte [edi + 0x6d9], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov eax, ebx
mov dword [edi + 0x744], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0x6e2], al
test ecx, ecx
je 0x49697a
mov byte [edi + 0x3c9], 5
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp byte [edi + 0x3c9], 5
jne case.0x497b4b.10076
mov byte [edi + 0x3c9], bl
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6da], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
je 0x4969d0
mov byte [edi + 0x6e2], bl
mov al, 4
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
xor al, al
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ce], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0x20c49b
jg 0x499414
imul eax, eax, 0x3e8
mov dword [edi + 0x1fc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x208], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 3
jge 0x499414
mov byte [edi + 0x4e5], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d0], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 4
jge 0x499414
mov byte [edi + 0x3c8], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cdq
mov dword [edi + 0x3c0], eax
mov eax, ebx
mov dword [edi + 0x3c4], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cdq
mov esi, eax
mov ebp, edx
cmp ebp, 0xffffffff
jl 0x499414
jg 0x496aeb
cmp esi, 0xffffffff
jb 0x499414
cmp dword [edi + 0x184], ebp
jg 0x496b21
jl 0x496afd
cmp dword [edi + 0x180], esi
jae 0x496b21
mov eax, dword [edi + 0x628]
cmp dword [edi + 0x178], eax
jne 0x496b21
push eax
call dword [0x5bf144]
mov dword [edi + 0x628], ebx
add esp, 4
mov dword [edi + 0x178], ebx
mov dword [edi + 0x180], esi
mov eax, ebx
mov dword [edi + 0x184], ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e1], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6dd], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6dc], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6de], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x499414
mov dword [edi + 0x174], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
and al, 7
mov byte [edi + 0x6bc], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
je 0x4969d0
mov byte [edi + 0x6e2], bl
mov al, 1
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ca], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
je case.0x497b4b.10076
mov byte [edi + 0x3c9], bl
mov eax, ebx
mov byte [edi + 0x6e2], bl
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 5
ja case.default.0x496c44
jmp dword [eax*4 + 0x4997a0]
mov eax, 4
mov byte [edi + 0x3ca], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
test eax, eax
js 0x499414
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
jne 0x496c8f
mov dword [edi + 0x16c], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x98e], al
test dl, 0x10
je 0x496ca7
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
nop dword [eax]
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x496cce
cmp ecx, 0x1f
jl 0x496cb0
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 8
ret
mov dword [edi + 0x16c], edx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cf], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0xffff
jg 0x499414
mov word [edi + 0x4a0], ax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
jne 0x496d3b
mov dword [edi + 0x170], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x99e], al
test dl, 0x10
je 0x496d53
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x496d76
cmp ecx, 0x1f
jl 0x496d58
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 8
ret
mov dword [edi + 0x170], edx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 7
jg 0x499414
mov byte [edi + 0x4a2], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
sub eax, 0
je 0x496dd2
sub eax, 1
jne 0x496f25
mov byte [edi + 0x6ec], 1
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov byte [edi + 0x6ec], bl
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ed], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d2], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d1], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 4
jge 0x499414
mov byte [edi + 0x4d0], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d5], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d4], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d6], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 3
jge 0x499414
mov byte [edi + 0x4d2], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d7], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 3
jge 0x499414
mov byte [edi + 0x4d1], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x496f25
cmp eax, 2
jg 0x496f25
mov byte [edi + 0x4e4], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
pop edi
pop esi
mov ebx, 0x2b
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x499414
cdq
mov dword [edi + 0x210], eax
mov eax, ebx
mov dword [edi + 0x214], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x218], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x21c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0xffff
jg 0x499414
mov word [edi + 0x168], ax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0x20c49b
jg 0x499414
imul eax, eax, 0x3e8
mov dword [edi + 0x1f0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1f0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0x20c49b
jg 0x499414
imul eax, eax, 0x3e8
mov dword [edi + 0x1f4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1f4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x499414
cdq
mov dword [edi + 0x230], eax
mov eax, ebx
mov dword [edi + 0x234], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push dword [edi + 0x590]
call dword [0x5bf144]
push edi
mov dword [edi + 0x590], ebx
call fcn.004a71f0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cb], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0xffff
jg 0x499414
push eax
call fcn.004b2130
add esp, 4
mov word [edi + 0x188], ax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0xffff
jg 0x499414
push eax
call fcn.004b2130
add esp, 4
mov word [edi + 0x18a], ax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x405], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x497b4b.10076
pop edi
pop esi
mov byte [ecx + 0x181], al
mov eax, ebx
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 3
setne al
mov byte [edi + 0x406], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x497b4b.10076
pop edi
pop esi
mov byte [ecx + 0x182], al
mov eax, ebx
pop ebp
pop ebx
add esp, 8
ret
push 2
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x42c], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp dword [edi + 0x8d0], ebx
jne 0x499414
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0x4971c3
mov eax, 0xa00000
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp eax, 1
jge 0x4971dd
mov eax, 0x4000
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, 0x400
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e7], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cdq
mov dword [edi + 0x4c8], eax
mov eax, ebx
mov dword [edi + 0x4cc], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 4
jge 0x499414
mov byte [edi + 0x6c5], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 2
jg 0x499414
mov byte [edi + 0x4c0], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e8], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 2
jg 0x499414
mov byte [edi + 0x6c6], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x408], al
mov byte [edi + 0x470], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
sete al
mov byte [edi + 0x6ea], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
sete al
mov byte [edi + 0x6eb], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
cmp eax, 0x1ff
jg 0x499414
mov dword [edi + 0x4e8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x64c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x654], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
dec eax
cmp eax, 0xa
ja case.default.0x4973a0
jmp dword [eax*4 + 0x4997b8]
mov eax, 1
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 2
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 3
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 4
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 5
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 6
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 7
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 8
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 9
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 0xa
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, 0xb
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
xor eax, eax
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0xc70], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0xc74], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d8], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov al, byte [eax]
and al, 3
mov byte [edi + 0x678], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x2711
jg 0x497b20
je 0x497b0a
lea eax, [ecx - 0xd4]
cmp eax, 0x6e
ja case.0x49946c.40296
movzx eax, byte [eax + 0x499890]
jmp dword [eax*4 + 0x4997e4]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x499414
mov dword [edi + 0x4a8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6db], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c8], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
movzx eax, dx
and edx, 0xffff0000
mov dword [esp + 0x10], eax
cmp eax, 2
je 0x499414
cmp eax, 3
je 0x499414
cmp eax, 8
jae 0x499414
cmp edx, 0x7ffff
ja 0x499414
cmp ecx, 0x20
mov esi, 0x404
mov ecx, dword [esp + 0x10]
mov eax, 0x46c
cmove eax, esi
cmp dword [esp + 0x20], 0x20
mov esi, 0x400
mov byte [eax + edi], cl
mov eax, 0x468
cmove eax, esi
mov dword [eax + edi], edx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov al, byte [eax]
and al, 1
mov byte [edi + 0x6c9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x688], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 1
jg 0x499414
test eax, eax
setne al
mov byte [edi + 0x6fd], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x658], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov al, byte [eax]
mov byte [edi + 0x4a3], al
and al, 0xfa
movzx ebx, al
neg ebx
pop edi
sbb ebx, ebx
pop esi
and ebx, 4
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4d4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f6], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6fa], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x46d], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x497b4b.10076
pop edi
pop esi
mov byte [ecx + 0x1c1], al
mov eax, ebx
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 3
setne al
mov byte [edi + 0x6fb], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 3
setne al
mov byte [edi + 0x46e], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x497b4b.10076
pop edi
pop esi
mov byte [ecx + 0x1c2], al
mov eax, ebx
pop ebp
pop ebx
add esp, 8
ret
call fcn.004a66b0
test al, al
jne 0x49774e
pop edi
pop esi
mov ebx, 4
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x407], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x497b4b.10076
pop edi
pop esi
mov byte [ecx + 0x183], al
mov eax, ebx
pop ebp
pop ebx
add esp, 8
ret
call fcn.004a66b0
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6fc], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push edi
call fcn.004a6be0
add esp, 4
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x42d], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0x4977d4
mov eax, 0x200000
jmp 0x4977de
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b4], eax
push dword [edi + 0x8d4]
call dword [0x5bf144]
add esp, 4
mov dword [edi + 0x8d4], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x3fc], cl
mov byte [edi + 0x42e], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x42f], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x430], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [edi + 0x431], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
mov byte [edi + 0x432], al
and cl, 1
mov byte [edi + 0x433], cl
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x464], cl
mov byte [edi + 0x496], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x497], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x498], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [edi + 0x499], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
mov byte [edi + 0x49a], al
and cl, 1
mov byte [edi + 0x49b], cl
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c4], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ee], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ef], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x67c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x680], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f1], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f2], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f3], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 1
jl case.0x497b4b.10076
cmp eax, 0x100
jg case.0x497b4b.10076
mov dword [edi + 0x694], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f4], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1f8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f5], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6f8], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x6a4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x200], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x499414
mov dword [edi + 0x204], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
add edi, 0x704
test byte [eax], 1
je 0x497aa8
cmp dword [edi], ebx
jne case.0x497b4b.10076
call fcn.004b3d90
mov dword [edi], eax
test eax, eax
je 0x497e6c
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
push edi
call fcn.004b3d40
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [edi + 0x708]
test eax, eax
jne 0x497ad8
call fcn.004b2880
mov dword [edi + 0x708], eax
test eax, eax
je 0x497e6c
mov ecx, dword [esp + 0x24]
push dword [ecx]
push eax
call fcn.004b2860
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cd], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x15c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x27f4
jg 0x4989b7
je 0x4989a1
add ecx, 0xffffd8ee
cmp ecx, 0xde
ja case.0x49946c.40296
movzx eax, byte [ecx + 0x499a24]
jmp dword [eax*4 + 0x499900]
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x56c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x53c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x497c8b
mov esi, dword [edi + 0x180]
mov eax, esi
mov edx, dword [edi + 0x184]
and eax, edx
cmp eax, 0xffffffff
je 0x497c8b
test edx, edx
ja 0x497c63
jb 0x497bce
cmp esi, 0xffffffff
ja 0x497c63
push dword [edi + 0x628]
lea esi, [edi + 0x628]
call dword [0x5bf144]
mov dword [esi], ebx
add esp, 4
mov ecx, dword [edi + 0x180]
mov eax, ecx
mov edx, dword [edi + 0x184]
or eax, edx
jne 0x497bfc
mov ecx, 1
push ecx
call dword [0x5bf140]
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x497c2a
mov eax, dword [esi]
mov ebx, 0x1b
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [edi + 0x180]
mov eax, ecx
or eax, dword [edi + 0x184]
je 0x497c48
push ecx
push dword [esp + 0x24]
push ebp
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esi], ebp
mov eax, ebp
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [edi + 0x628]
lea esi, [edi + 0x628]
mov dword [edi + 0x178], eax
mov ebx, 0x1b
mov byte [edi + 0x3c9], 1
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push ecx
lea esi, [edi + 0x628]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x178], eax
push dword [edi + 0x628]
call dword [0x5bf144]
add esp, 4
mov dword [edi + 0x628], ebx
mov byte [edi + 0x3c9], 1
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
je 0x497d33
cmp byte [eax], bl
jne 0x497d33
call fcn.004b54b0
mov esi, eax
test esi, esi
jne 0x497d10
pop edi
pop esi
mov ebx, 0x1b
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
lea eax, [edi + 0x510]
push esi
push eax
call fcn.004967e0
push esi
mov ebx, eax
call dword [0x5bf144]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push eax
lea eax, [edi + 0x510]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [edi + 0xcf4]
mov eax, dword [eax]
mov dword [edi + 0x23c], eax
mov byte [edi + 0x3c9], 2
mov byte [edi + 0x6e2], bl
call fcn.004a1ec0
push dword [edi + 0xcf4]
call dword [0x5bf144]
add esp, 8
mov dword [edi + 0xcf4], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp byte [edi + 0xda1], bl
je 0x497db3
push dword [edi + 0xce8]
call dword [0x5bf144]
add esp, 4
mov dword [edi + 0xce8], ebx
mov byte [edi + 0xda1], bl
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x54c]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xce8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x57c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x4fc]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
je 0x497e89
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x497e30
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x499414
push edx
push dword [edi + 0x1d0]
call fcn.00495530
add esp, 8
test eax, eax
jne 0x497e79
push dword [edi + 0x1d0]
call fcn.004955b0
add esp, 4
mov dword [edi + 0x1d0], ebx
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 8
ret
mov dword [edi + 0x1d0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push dword [edi + 0x1d0]
call fcn.004955b0
mov eax, dword [edi + 0x84]
add esp, 4
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0x497eac
cmp dword [eax + 0x78], ebx
jne 0x497ec5
push dword [edi + 0x700]
call fcn.0049f2a0
push dword [edi + 0x700]
call fcn.0049f220
add esp, 8
mov dword [edi + 0x700], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x500]
push eax
call fcn.004967e0
mov ebx, eax
movzx eax, byte [edi + 0x6ca]
push eax
push dword [edi + 0x700]
push 0
push edi
call fcn.0049f810
add esp, 0x18
mov dword [edi + 0x700], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
test esi, esi
je case.0x497b4b.10076
push 0x57c02c
push esi
call fcn.004b4d60
add esp, 8
test eax, eax
je 0x497f66
push 2
push 2
push edi
call fcn.004b5cc0
push dword [edi + 0x700]
call fcn.0049f2a0
push 2
push edi
call fcn.004b5d00
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push str.SESS
push esi
call fcn.004b4d60
add esp, 8
test eax, eax
je 0x497fa2
push 2
push 2
push edi
call fcn.004b5cc0
push dword [edi + 0x700]
call fcn.0049f320
push 2
push edi
call fcn.004b5d00
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push str.FLUSH
push esi
call fcn.004b4d60
add esp, 8
test eax, eax
je 0x497fc9
push 0
push edi
call fcn.0049fd40
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push str.RELOAD
push esi
call fcn.004b4d60
add esp, 8
test eax, eax
je 0x497fee
push edi
call fcn.0049fae0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp dword [edi + 0x700], ebx
jne 0x49800b
push 1
push 0
push 0
push edi
call fcn.0049f810
add esp, 0x10
mov dword [edi + 0x700], eax
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x498010
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x499414
push esi
call dword [0x5bf14c]
mov esi, eax
add esp, 4
test esi, esi
je 0x49809a
cmp dword [edi + 0x700], ebx
je 0x49809a
push 2
push 2
push edi
call fcn.004b5cc0
push 0xb
push str.Set_Cookie:
push esi
call fcn.004b4dc0
add esp, 0x18
lea ecx, [esi + 0xb]
test eax, eax
jne 0x498060
mov ecx, esi
push 1
push 0
push 0
test eax, eax
push ecx
setne al
push 0
movzx eax, al
push eax
push dword [edi + 0x700]
push edi
call fcn.0049e470
push 2
push edi
call fcn.004b5d00
push esi
call dword [0x5bf144]
add esp, 0x2c
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push esi
mov ebx, 0x1b
call dword [0x5bf144]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4bc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x238], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x504]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x540]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x164], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x158], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x51c]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6d3], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x514]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x518]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x538]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6e4], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4dc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4e0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4d8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x160], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp byte [edi + 0xda0], bl
je 0x49825c
push dword [edi + 0xce4]
call dword [0x5bf144]
add esp, 4
mov dword [edi + 0xce4], ebx
mov byte [edi + 0xda0], bl
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x550]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xce4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea ebp, [edi + 0x598]
add edi, 0x594
xor ebx, ebx
mov esi, dword [eax]
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], eax
test esi, esi
je 0x4982f4
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4982b0
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x496f25
xor edx, edx
lea eax, [esp + 0x10]
test ebp, ebp
push edx
cmove eax, edx
test edi, edi
push eax
lea eax, [esp + 0x28]
cmove eax, edx
push eax
push ecx
push esi
call fcn.004a9350
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne case.0x497b4b.10076
mov eax, dword [esp + 0x20]
test edi, edi
je 0x498332
test eax, eax
jne 0x498321
test esi, esi
je 0x498321
cmp byte [esi], 0x3a
jne 0x498321
push 0x59de09
call dword [0x5bf14c]
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
push dword [edi]
call dword [0x5bf144]
mov eax, dword [esp + 0x24]
add esp, 4
mov dword [edi], eax
test ebp, ebp
je case.0x497b4b.10076
push dword [ebp]
call dword [0x5bf144]
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [ebp], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x594]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x598]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x59c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5ec]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x3b4], eax
mov dword [edi + 0xcec], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1e8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea ebp, [edi + 0x5a4]
add edi, 0x5a0
xor ebx, ebx
mov esi, dword [eax]
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], eax
test esi, esi
je 0x4982f4
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x498430
jmp 0x4982b7
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5a0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5a4]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5a8]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x548]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x154], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x150], eax
test eax, eax
jne case.0x497b4b.10076
push 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
add esp, 4
mov dword [edi + 0x150], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1cc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1ec], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x4ec]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x4f4]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x520]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x530]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x528]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
test esi, esi
je case.0x497b4b.10076
cmp byte [esi], bl
je case.0x497b4b.10076
lea eax, [edi + 0x590]
push esi
push eax
call fcn.004967e0
mov ebx, eax
add esp, 8
test ebx, ebx
jne case.0x497b4b.10076
push esi
push edi
call fcn.004a71e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x50c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 8
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x414], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x55c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 1
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x554]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x580]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x588]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x3b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea ebp, [edi + 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp]
mov dword [esp + 0x20], ecx
test eax, eax
je 0x498790
push 2
push 1
push edi
call fcn.004b5cc0
add esp, 0xc
mov ecx, ebp
cmp dword [edi + 0x78], 2
jne 0x498730
mov dword [edi + 0x74], ebx
lea ecx, [edi + 0x84]
mov dword [edi + 0x78], ebx
mov edx, dword [ebp]
mov esi, ebp
mov eax, dword [edx + 0x78]
cmp eax, dword [edi + 0x700]
jne 0x498748
mov dword [edi + 0x700], ebx
mov esi, ecx
mov eax, dword [edx + 0x7c]
cmp eax, dword [edi + 0x704]
jne 0x49875b
mov dword [edi + 0x704], ebx
mov ebp, esi
mov eax, dword [edx + 0x80]
cmp eax, dword [edi + 0x8f0]
jne 0x49876f
mov dword [edi + 0x8f0], ebx
mov eax, dword [ebp]
push 1
push edi
mov ecx, dword [eax + 8]
mov eax, dword [ebp]
dec ecx
mov dword [eax + 8], ecx
call fcn.004b5d00
mov ecx, dword [esp + 0x28]
add esp, 8
mov dword [ebp], ebx
xor eax, eax
mov esi, ebp
test ecx, ecx
je 0x4987a9
cmp dword [ecx], 0x7e117a1e
jne 0x4987a9
mov dword [ebp], ecx
lea esi, [edi + 0x84]
jmp 0x4987b1
test eax, eax
je case.0x497b4b.10076
push 2
push 1
push edi
call fcn.004b5cc0
mov eax, dword [ebp]
add esp, 0xc
mov ecx, dword [eax + 8]
mov eax, dword [ebp]
inc ecx
mov dword [eax + 8], ecx
mov ecx, dword [ebp]
test byte [ecx + 4], 8
je 0x4987e3
lea eax, [ecx + 0x60]
mov ebp, esi
mov dword [edi + 0x74], eax
mov dword [edi + 0x78], 2
cmp dword [ecx + 0x78], ebx
je 0x498802
push dword [edi + 0x700]
call fcn.0049f220
mov ecx, dword [ebp]
add esp, 4
mov eax, dword [ecx + 0x78]
mov dword [edi + 0x700], eax
cmp dword [ecx + 0x7c], ebx
je 0x49881e
lea esi, [edi + 0x704]
push esi
call fcn.004b3d40
mov eax, dword [ebp]
add esp, 4
mov eax, dword [eax + 0x7c]
mov dword [esi], eax
mov ecx, dword [ebp]
cmp dword [ecx + 0x80], ebx
je 0x498841
mov eax, dword [ecx + 0x84]
mov dword [edi + 0x4a4], eax
mov eax, dword [ecx + 0x80]
mov dword [edi + 0x8f0], eax
push 1
push edi
call fcn.004b5d00
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x4b8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1b8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1c0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5d4]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5d8]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x6c0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5ac]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5b0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5b4]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x674], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x670], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x49c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x4e2b
jg 0x49906a
je 0x499042
lea eax, [ecx - 0x27f6]
cmp eax, 0x5d
ja case.0x49946c.40296
movzx eax, byte [eax + 0x499ba4]
jmp dword [eax*4 + 0x499b04]
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x570]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 0x20
push edi
call fcn.004a7270
add esp, 8
test al, al
je 0x496cc1
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x574]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 0x20
push edi
call fcn.004a7270
add esp, 8
test al, al
je 0x496cc1
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x578]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5f4]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x61c]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
cmp dword [esi], 0
je case.0x497b4b.10076
mov dword [edi + 0x16c], 0x80
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push 0
push dword [eax]
lea eax, [edi + 0x240]
push eax
call fcn.004a2810
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne case.0x497b4b.10076
push dword [edi + 0xcf4]
mov byte [edi + 0x3c9], 3
mov byte [edi + 0x6e2], al
call fcn.004a1ec0
push dword [edi + 0xcf4]
call dword [0x5bf144]
add esp, 8
mov dword [edi + 0xcf4], ebx
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x544]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5cc]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x5d0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x6b0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x4f0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x4f8]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x524]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x534]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x52c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x620]
push eax
call fcn.004967e0
add esp, 8
mov byte [edi + 0x6f6], 1
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 4
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x564]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 4
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x568]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x560]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 1
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x558]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x584]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x58c]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x618]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x6a0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x20]
push ecx
push dword [eax]
call fcn.00499db0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x499579
mov eax, dword [esp + 0x20]
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x20]
push ecx
push dword [eax]
call fcn.00499db0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x499579
mov eax, dword [esp + 0x20]
mov dword [edi + 0x654], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x508]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x604]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov byte [edi + 0x6f7], bl
push dword [eax]
lea eax, [edi + 0x5f0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov byte [edi + 0x6f7], 1
push dword [eax]
lea eax, [edi + 0x5f0]
push eax
call fcn.004967e0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
je 0x498e6f
cmp dword [edx], 0xc0dedbad
jne case.0x497b4b.10076
cmp ecx, 0x2801
sete al
movzx eax, al
push eax
push edi
push edx
call fcn.004a8a90
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x3b8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
lea esi, [edi + 0x5f8]
push dword [eax]
push esi
call fcn.004967e0
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6f9], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x6b4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1dc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1e4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp dword [edi + 0x704], ebx
lea esi, [edi + 0x704]
jne 0x498f30
call fcn.004b3d90
mov dword [esi], eax
test eax, eax
je 0x497e6c
mov eax, dword [esp + 0x24]
mov ebp, dword [eax]
test ebp, ebp
je 0x498f96
lea eax, [edi + 0x600]
push ebp
push eax
call fcn.004967e0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x499579
push ebp
push dword [edi + 0x1d4]
call fcn.00495530
add esp, 8
test eax, eax
jne 0x498f86
push dword [edi + 0x1d4]
call fcn.004955b0
add esp, 4
mov dword [edi + 0x1d4], ebx
lea eax, [ebx + 0x1b]
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov dword [edi + 0x1d4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push dword [edi + 0x1d4]
call fcn.004955b0
mov dword [edi + 0x1d4], ebx
add esp, 4
mov eax, dword [edi + 0x84]
test eax, eax
je 0x498fbd
cmp dword [eax + 0x7c], ebx
jne case.0x497b4b.10076
push esi
call fcn.004b3d40
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp dword [edi + 0x708], ebx
jne 0x498feb
call fcn.004b2880
mov dword [edi + 0x708], eax
test eax, eax
je 0x497e6c
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
lea eax, [edi + 0x5fc]
push esi
push eax
call fcn.004967e0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x499579
test esi, esi
je case.0x497b4b.10076
push esi
push dword [edi + 0x708]
call fcn.004b28b0
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1c8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x18c], eax
test eax, eax
jne case.0x497b4b.10076
mov dword [edi + 0x18c], sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x4f30
jg 0x49924a
je 0x499234
add ecx, 0xffffb1d4
cmp ecx, 0xcf
ja case.0x49946c.40296
movzx eax, byte [ecx + 0x499c44]
jmp dword [eax*4 + 0x499c04]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x19c], eax
setne al
mov byte [edi + 0x894], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x1a0], eax
setne al
mov byte [edi + 0x894], al
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1a4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x190], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x198], eax
test eax, eax
jne 0x499134
mov byte [edi + 0x6c7], bl
mov eax, ebx
mov dword [edi + 0x198], sub.api_ms_win_crt_stdio_l1_1_0.dll_fread
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov byte [edi + 0x6c7], 1
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x17c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1a8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 8
push edi
call fcn.004a7270
add esp, 8
test al, al
je case.0x497525.244
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x410], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1ac], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1b4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1bc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x194], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x664], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x668], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x66c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x69c], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x75c1
jg 0x4993c3
je 0x49939a
cmp ecx, 0x75a3
jg 0x499312
je 0x4992df
add ecx, 0xffffb0c5
cmp ecx, 0x1d
ja case.0x49946c.40296
movzx eax, byte [ecx + 0x499d28]
jmp dword [eax*4 + 0x499d14]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x6b8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1d8], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1e0], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [edi + 0x1c4], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x499414
jg 0x4992fc
cmp ecx, 0xffffffff
jb 0x499414
mov dword [edi + 0x214], eax
mov eax, ebx
mov dword [edi + 0x210], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
sub ecx, 0x75a4
je 0x499367
sub ecx, 1
je 0x499336
sub ecx, 3
jne case.0x49946c.40296
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
mov ebp, dword [eax + 4]
jmp 0x496ad7
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x499414
jg 0x499351
test ecx, ecx
jb 0x499414
mov dword [edi + 0x4c8], ecx
mov dword [edi + 0x4cc], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x499414
jg 0x499384
cmp ecx, 0xffffffff
jb 0x499414
mov dword [edi + 0x230], ecx
mov dword [edi + 0x234], eax
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x499414
jg 0x4993ad
test ecx, ecx
jb 0x499414
mov dword [edi + 0x224], eax
mov eax, ebx
mov dword [edi + 0x220], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x9d63
jg 0x499456
je 0x499437
sub ecx, 0x75c2
je 0x499401
sub ecx, 0x7c
jne case.0x49946c.40296
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0x3c4], eax
mov eax, ebx
mov dword [edi + 0x3c0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jg 0x499421
jl 0x499414
test ecx, ecx
jae 0x499421
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 8
ret
mov dword [edi + 0x22c], eax
mov eax, ebx
mov dword [edi + 0x228], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x62c]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
add ecx, 0xffff629c
cmp ecx, 0x12
ja case.0x49946c.40296
movzx eax, byte [ecx + 0x499d68]
jmp dword [eax*4 + 0x499d48]
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x630]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x634]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x638]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 0x40
push edi
call fcn.004a7270
add esp, 8
test al, al
je 0x496cc1
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x644]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push 0x40
push edi
call fcn.004a7270
add esp, 8
test al, al
je 0x496cc1
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x648]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x63c]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
lea eax, [edi + 0x640]
push eax
call fcn.00496750
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ebx, 0x30
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret