Function at 0x49237d
Capabilities:
Check for software breakpoints
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
mov eax, 0x1040
call fcn.00526980
mov esi, esp
mov dword [esi + 0x1028], ebp
lea eax, [esi + 0x1030]
mov dword [esi + 0xdc], ecx
mov ebx, edx
mov dword [esi + 0xb0], edx
mov dword [eax - 4], esp
or dword [eax + 8], 0xffffffff
mov dword [eax + 4], 0x5047a0
mov ecx, dword fs:[0]
mov dword [eax], ecx
mov dword fs:[0], eax
mov al, byte [edx + 0x91]
mov byte [esi + 0xb9], al
mov al, byte [edx + 0x92]
mov byte [esi + 0x42], al
mov al, byte [edx + 0x94]
mov byte [esi + 0x4f], al
mov al, byte [edx + 0x95]
mov byte [esi + 0x36], al
mov al, byte [edx + 0x96]
mov byte [esi + 0xba], al
mov al, byte [edx + 0x98]
mov byte [esi + 0xbb], al
lea eax, [edx + 0xa0]
mov dword [esi + 0x1ac], eax
lea eax, [edx + 0xe0]
mov dword [esi + 0xd8], eax
lea eax, [edx + 8]
mov dword [esi + 0x1a8], eax
mov dword [esi + 0x48], eax
mov dword [esi + 0x3c], eax
mov ecx, dword [ebx + 0xe4]
test ecx, ecx
je 0x4942a3
mov dword [esi + 0x1d0], 2
and dword [esi + 0x1e0], 0
mov eax, dword [esi + 0xd8]
xor edi, edi
mov dword [esi + 4], ecx
mov eax, dword [eax]
mov dword [esi + 0x50], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x54], ecx
mov dword [esi + 0x58], edi
lea ecx, [esi + 0x50]
call fcn.0044e34a
test al, 1
je 0x4942aa
cmp dl, 0xd
jne 0x4924a1
lea eax, [edi + 1]
cmp dword [esi + 4], eax
mov dword [esi + 0x58], eax
jbe 0x4942aa
mov eax, dword [esi + 0x10]
mov al, byte [eax + edi + 1]
add edi, 2
mov dword [esi + 0x58], edi
cmp al, 0xa
je 0x492467
jmp 0x4942b7
movzx eax, dl
cmp eax, 0xa
jne 0x4924ac
inc edi
jmp 0x492464
lea ecx, [esi + 0x50]
call fcn.0044e326
mov eax, dword [esi + 0x58]
mov edi, dword [esi + 0x54]
cmp eax, 0xfffffff7
ja 0x492576
lea edx, [eax + 8]
cmp edx, edi
ja 0x492576
mov ecx, dword [esi + 0x50]
movq xmm0, qword [ecx + eax]
mov dword [esi + 8], ecx
movdqa xmmword [esi + 0x190], xmm0
mov cl, byte [esi + 0x196]
mov byte [esi + 0x14], cl
mov cl, byte [esi + 0x195]
mov byte [esi + 0xc], cl
mov bh, byte [esi + 0x190]
mov bl, byte [esi + 0x194]
mov cl, byte [esi + 0x193]
mov ch, byte [esi + 0x192]
cmp bh, 0x48
mov bh, byte [esi + 0x191]
mov dword [esi + 0x58], edx
jne 0x49278d
cmp bh, 0x54
jne 0x49278d
cmp ch, 0x54
jne 0x49278d
cmp cl, 0x50
jne 0x49278d
cmp bl, 0x2f
jne 0x49278d
cmp byte [esi + 0xc], 0x31
jne 0x49278d
cmp byte [esi + 0x14], 0x2e
jne 0x49278d
pextrw ecx, xmm0, 3
shr ecx, 8
cmp cl, 0x30
je 0x49263c
cmp ecx, 0x31
jne 0x49278d
mov cl, 2
jmp 0x49263e
cmp edi, eax
jbe 0x4942aa
mov edx, dword [esi + 0x50]
lea ecx, [eax + 1]
mov bl, byte [edx + eax]
mov dword [esi + 0x58], ecx
cmp bl, 0x48
jne 0x49278d
cmp edi, ecx
jbe 0x4942aa
mov bl, byte [edx + eax + 1]
lea ecx, [eax + 2]
mov dword [esi + 0x58], ecx
cmp bl, 0x54
jne 0x49278d
cmp edi, ecx
jbe 0x4942aa
mov bl, byte [edx + eax + 2]
lea ecx, [eax + 3]
mov dword [esi + 0x58], ecx
cmp bl, 0x54
jne 0x49278d
cmp edi, ecx
jbe 0x4942aa
mov bl, byte [edx + eax + 3]
lea ecx, [eax + 4]
mov dword [esi + 0x58], ecx
cmp bl, 0x50
jne 0x49278d
cmp edi, ecx
jbe 0x4942aa
mov bl, byte [edx + eax + 4]
lea ecx, [eax + 5]
mov dword [esi + 0x58], ecx
cmp bl, 0x2f
jne 0x49278d
cmp edi, ecx
jbe 0x4942aa
mov cl, byte [edx + eax + 5]
add eax, 6
mov dword [esi + 0x58], eax
cmp cl, 0x31
jne 0x49278d
cmp edi, eax
jbe 0x4942aa
cmp byte [edx + eax], 0x2e
push 6
pop eax
mov ecx, 0
cmove eax, ecx
jne 0x492790
jmp 0x4942aa
mov cl, 1
cmp edi, edx
mov dword [esi + 0xe0], ecx
jbe 0x4942aa
mov ecx, dword [esi + 8]
mov cl, byte [ecx + eax + 8]
add eax, 9
mov dword [esi + 0x58], eax
cmp cl, 0x20
jne 0x49278d
lea ecx, [esi + 0x50]
call fcn.0044e326
cmp byte [esi + 0x4f], 0
je 0x492680
lea ecx, [esi + 0x50]
call fcn.0044e2f9
test al, al
jne 0x4942aa
mov ecx, dword [esi + 0x54]
mov eax, dword [esi + 0x58]
cmp ecx, eax
jbe 0x4942aa
mov edx, dword [esi + 0x50]
mov bl, byte [edx + eax]
add bl, 0xd0
cmp bl, 9
mov byte [esi + 0x14], bl
ja 0x4944ab
lea edi, [eax + 1]
cmp ecx, edi
jbe 0x4942aa
mov bl, byte [edx + eax + 1]
add bl, 0xd0
cmp bl, 9
mov byte [esi + 8], bl
ja 0x4944ab
lea edi, [eax + 2]
cmp ecx, edi
jbe 0x4942aa
mov bl, byte [edx + eax + 2]
add bl, 0xd0
cmp bl, 0xa
mov byte [esi + 0x30], bl
jae 0x4944ab
lea edi, [eax + 3]
cmp ecx, edi
jbe 0x4942aa
movzx edi, byte [edx + eax + 3]
lea ebx, [eax + 4]
mov dword [esi + 0x58], ebx
cmp edi, 0xa
je 0x4936fe
cmp edi, 0xd
je 0x4936e3
cmp edi, 0x20
jne 0x4944ab
cmp byte [esi + 0x4f], 0
je 0x492726
lea ecx, [esi + 0x50]
call fcn.0044e2f9
test al, al
jne 0x4942aa
lea ecx, [esi + 0x50]
call fcn.0044e326
mov eax, dword [esi + 0x54]
mov edi, dword [esi + 0x50]
mov edx, dword [esi + 0x58]
xor ecx, ecx
mov dword [esi + 0xc], eax
cmp dword [esi + 0xc], edx
mov dword [esi + 0x38], edx
jbe 0x4942aa
mov eax, dword [esi + 0x38]
movzx ebx, byte [edi + eax]
lea edx, [eax + 1]
cmp ebx, 9
je 0x49277e
cmp ebx, 0x20
je 0x49277e
cmp ebx, 0xa
je 0x494129
cmp ebx, 0xd
je 0x4940e2
test bl, bl
js 0x49277e
mov eax, ebx
add al, 0xdf
cmp al, 0x5d
ja 0x4944ab
test bl, bl
movzx ecx, cl
mov eax, 1
cmovs ecx, eax
jmp 0x49273c
push 6
pop eax
cmp al, 6
jne 0x4942ba
cmp byte [esi + 0xbb], 0
je 0x4942ba
mov ax, 0xc8
xor edi, edi
mov dword [esi + 0xe0], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10c], eax
xor eax, eax
mov edx, dword [esi + 0x158]
lea ecx, [esi + 0x144]
movsd xmm0, qword [esi + 0x150]
mov dword [esi + 0x140], eax
mov byte [esi + 0x43], 1
mov dword [esi + 0x1038], 2
mov dword [ecx + 8], edx
mov edx, dword [esi + 0xd8]
movsd qword [ecx], xmm0
lea ecx, [esi + 0x220]
push edi
call fcn.00422a49
pop eax
cmp byte [esi + 0x42], 0
je 0x492899
mov edx, dword [esi + 0xc]
mov al, 1
mov dword [esi + 0x1038], 3
lea ecx, [esi + 0x9e8]
mov byte [esi + 0x28], al
mov byte [esi + 0x29], al
push 0x575364
call fcn.00455cec
pop ecx
shl edx, 4
mov ebx, eax
add edx, eax
mov dword [esi + 0x10], edx
cmp ebx, dword [esi + 0x10]
mov dword [esi + 0x1038], 3
je 0x492899
mov eax, dword [esi + 0x220]
mov edx, dword [ebx + 0xc]
mov edi, dword [esi + 0x224]
mov ecx, dword [ebx + 8]
mov dword [esi + 4], ebx
mov bl, 1
mov byte [esi + 0x28], bl
mov byte [esi + 0x29], bl
push 0x575394
push edi
push eax
call fcn.00463c35
mov ebx, dword [esi + 4]
add esp, 0xc
add ebx, 0x10
test edx, edx
je 0x492840
movzx ecx, byte [eax]
cmp ecx, 0xd
je 0x492892
cmp ecx, 0xa
jne 0x492895
mov byte [eax], 0x20
inc eax
dec edx
jmp 0x492881
lea ecx, [esi + 0x1b0]
lea edx, [esi + 0x220]
mov byte [esi + 0x28], 1
mov byte [esi + 0x29], 0
mov dword [esi + 0x1038], 3
call fcn.0043d554
mov edx, dword [esi + 0xb0]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov dword [edx], 3
and dword [edx + 4], 0
mov edx, eax
xor edx, 3
or edx, ecx
jne 0x4928f5
lea ecx, [esi + 0x150]
mov byte [esi + 0x37], 1
mov dword [esi + 0x1038], 4
call fcn.00449644
jmp 0x492918
mov dword [esi + 0x150], eax
mov dword [esi + 0x154], ecx
push 0x38
push dword [esi + 0x1a8]
lea eax, [esi + 0x158]
push eax
call fcn.00527800
add esp, 0xc
cmp byte [esi + 0xe0], 2
sete byte [esi + 0xb4]
cmp byte [esi + 0xba], 0
je 0x492983
mov al, 1
mov dword [esi + 0x1038], 5
xor ecx, ecx
mov byte [esi + 0x2a], al
mov byte [esi + 0x2b], al
push 2
pop edx
call fcn.004ebf96
and dword [esi + 0x54], 0
and dword [esi + 0x50], 0
mov dword [esi + 0x68], eax
and dword [esi + 0x6c], 0
and dword [esi + 0x70], 0
push 4
pop eax
mov dword [esi + 0x74], eax
and dword [esi + 0x78], 0
and dword [esi + 0x7c], 0
mov dword [esi + 0x80], eax
and dword [esi + 0x84], 0
and word [esi + 0x88], 0
jmp 0x49298e
and dword [esi + 0x54], 0
mov dword [esi + 0x50], 3
mov eax, dword [esi + 0x178]
mov dword [esi + 0x14], eax
add eax, dword [esi + 0xc]
jb 0x494b70
mov edx, dword [esi + 0x16c]
cmp eax, edx
mov ecx, edx
mov dword [esi + 0x10], edx
jbe 0x492bf1
lea ecx, [eax - 1]
bsr ecx, ecx
xor edx, edx
dec edx
not ecx
shr edx, cl
mov ecx, 1
inc edx
cmp eax, 2
cmovb edx, ecx
cmp edx, 0x8001
jae 0x494bc8
test edx, edx
je 0x494b9c
cmp dword [esi + 0x14], 0
mov dword [esi + 8], edx
je 0x492a3f
movzx eax, word [esi + 0x188]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x168]
xor edx, edx
mov dword [esi + 0x30], 0
movzx eax, ax
lea ecx, [ecx*4]
mov dword [esi + 4], edi
test ecx, ecx
je 0x492af3
cmp word [edi + edx*4], 0xffff
je 0x492a39
mov edi, dword [esi + 4]
mov ebx, eax
movzx edi, word [edi + edx*4 + 2]
and ebx, edi
mov edi, edx
sub edi, ebx
test edi, eax
mov edi, dword [esi + 4]
je 0x492af0
add ecx, 0xfffffffc
inc edx
jmp 0x492a0f
mov cl, 1
lea eax, [edx - 1]
mov dword [esi + 0x1038], 6
mov byte [esi], cl
mov byte [esi + 1], cl
mov byte [esi + 2], cl
lea ecx, [esi + 0x298]
mov word [esi + 0x188], ax
call fcn.00449253
mov al, 1
lea ecx, [esi + 0x298]
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
call fcn.0044916e
mov ebx, edx
mov ecx, dword [esi + 0x168]
mov edx, dword [esi + 0x16c]
mov edi, eax
call fcn.0043a80e
mov ecx, dword [esi + 8]
mov dword [esi + 0x168], edi
mov dword [esi + 0x16c], ebx
mov eax, ecx
shr eax, 2
sub ecx, eax
mov al, 1
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
call fcn.004493c5
mov dword [esi + 0x10], eax
mov dword [esi + 4], edx
lea ecx, [esi + 0x170]
mov dword [esi + 0x1038], 0x17
call fcn.0044fb99
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 4]
mov dword [esi + 0x170], eax
mov dword [esi + 0x174], ecx
and dword [esi + 0x178], 0
jmp 0x492bf1
mov dword [esi + 0x30], edx
mov edx, dword [esi + 8]
mov al, 1
lea ecx, [esi + 0x298]
mov dword [esi + 0x1038], 6
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
call fcn.00449253
mov al, 1
lea ecx, [esi + 0x298]
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
call fcn.0044916e
mov dword [esi + 0x168], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x16c], edx
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 4]
mov dword [esi + 0x1038], 0x18
dec eax
mov word [esi + 0x188], ax
push dword [esi + 0x30]
call fcn.00451c57
pop ecx
mov edi, edx
shl edi, 2
test edi, edi
je 0x492b81
lea ebx, [eax + 4]
movzx edx, word [eax]
movzx eax, word [eax + 2]
lea ecx, [esi + 0x150]
push eax
call fcn.00451c8c
pop eax
add edi, 0xfffffffc
mov eax, ebx
jmp 0x492b5f
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 4]
mov dword [esi + 0x1038], 0x18
push dword [esi + 0x30]
call fcn.00451c75
pop ecx
mov edi, edx
shl edi, 2
test edi, edi
je 0x492bc1
lea ebx, [eax + 4]
movzx edx, word [eax]
movzx eax, word [eax + 2]
lea ecx, [esi + 0x150]
push eax
call fcn.00451c8c
pop eax
add edi, 0xfffffffc
mov eax, ebx
jmp 0x492b9f
mov edx, dword [esi + 0x16c]
lea ecx, [esi + 0x170]
mov dword [esi + 0x1038], 0x18
mov eax, edx
shr eax, 2
add eax, dword [esi + 0x14]
sub edx, eax
call fcn.0043a9f7
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x10]
call fcn.0043a80e
mov edx, dword [esi + 0xc]
mov al, 1
mov dword [esi + 0x1038], 6
lea ecx, [esi + 0x9e8]
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
push 0x575374
call fcn.00455cec
pop ecx
shl edx, 4
add edx, eax
mov dword [esi + 0xe4], edx
mov edi, dword [esi + 0xb0]
cmp eax, dword [esi + 0xe4]
mov dword [esi + 0x44], eax
je 0x49353c
mov edx, eax
mov eax, dword [esi + 0x1b4]
mov edi, dword [esi + 0x1b8]
mov bl, 1
mov ecx, dword [edx]
mov edx, dword [edx + 4]
mov byte [esi], bl
mov byte [esi + 1], bl
mov byte [esi + 2], bl
mov dword [esi + 0x1038], 6
push 0x575384
push edi
push eax
call fcn.00463c35
add esp, 0xc
mov edi, edx
lea ecx, [esi + 0xc0]
mov edx, eax
push 0x572b48
lea eax, [esi + 0x298]
push eax
push edi
call fcn.00449798
add esp, 0xc
movzx eax, byte [esi + 0xc8]
cmp eax, 3
je 0x4943e1
mov edx, dword [esi + 0xc0]
mov edi, dword [esi + 0xc4]
test eax, eax
je 0x492cba
cmp eax, 2
jne 0x492d1b
xor eax, eax
jmp 0x492da8
mov al, 1
mov dword [esi + 4], edx
lea ecx, [esi + 0x110]
mov edx, edi
mov dword [esi + 0x10], edi
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
call fcn.0044c24c
mov eax, dword [esi + 4]
add dword [esi + 0x10], eax
cmp eax, dword [esi + 0x10]
mov dword [esi + 0xc], eax
je 0x492d46
mov ecx, eax
movzx eax, byte [eax]
mov al, byte [eax + 0x572b48]
test al, al
je 0x4943d6
lea edx, [ecx + 1]
lea ecx, [esi + 0x110]
mov dword [esi + 0x1038], 0xc
mov dword [esi + 4], edx
movzx edx, al
call fcn.00449403
mov eax, dword [esi + 4]
jmp 0x492cdd
mov al, 1
lea ecx, [esi + 0xc0]
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
push edi
call fcn.004224a3
pop eax
mov eax, dword [esi + 0xc0]
mov dl, byte [esi + 0xc4]
lea ecx, [esi + 0xc5]
jmp 0x492d93
movsd xmm0, qword [esi + 0x110]
movsd xmm1, qword [esi + 0x118]
lea ecx, [esi + 0xe8]
lea edx, [esi + 0xc0]
mov dword [esi + 0x1038], 0xc
movsd qword [esi + 0xc8], xmm1
movsd qword [esi + 0xc0], xmm0
call fcn.0044c28e
mov eax, dword [esi + 0xe8]
mov dl, byte [esi + 0xec]
lea ecx, [esi + 0xed]
movsd xmm0, qword [ecx]
mov ecx, dword [ecx + 7]
movsd qword [esi + 0xf8], xmm0
mov dword [esi + 0xff], ecx
mov dword [esi + 0x130], eax
mov eax, dword [esi + 0xff]
movsd xmm0, qword [esi + 0xf8]
lea ecx, [esi + 0x135]
mov byte [esi + 0x134], dl
lea edx, [esi + 0x1b0]
mov dword [ecx + 7], eax
movsd qword [ecx], xmm0
mov ecx, dword [esi + 0x44]
mov edi, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov byte [esi + 0x2e], 1
mov dword [esi + 0x1038], 7
lea ecx, [esi + 0x110]
push edi
push eax
call fcn.00422636
pop eax
pop ecx
movsd xmm0, qword [esi + 0x110]
movsd xmm1, qword [esi + 0x118]
mov dword [esi + 0x1038], 8
lea ecx, [esi + 0x298]
lea edx, [esi + 0x110]
movsd qword [esi + 0xe8], xmm0
and dword [esi + 0xe8], 0
movsd qword [esi + 0xf0], xmm1
push 0x5746a0
call fcn.0043a02d
pop eax
movsd xmm0, qword [esi + 0x298]
movsd xmm1, qword [esi + 0x2a0]
lea ecx, [esi + 0xe8]
mov byte [esi + 0x2e], 1
mov dword [esi + 0x1038], 7
movsd qword [esi + 0xc8], xmm1
movsd qword [esi + 0xc0], xmm0
mov byte [esi + 0xd0], 0
call fcn.0043b596
cmp dword [esi + 0x130], 0
jne 0x492ef6
cmp byte [esi + 0x134], 0x14
jne 0x492ef6
mov ecx, dword [esi + 0xc4]
mov edx, dword [esi + 0xc8]
test byte [esi + 0xb4], 1
jne 0x492ec9
mov byte [esi + 0x2c], 0
mov byte [esi + 0x2d], 1
mov dword [esi + 0x1038], 9
call fcn.004550ad
mov byte [esi + 0xb4], al
jmp 0x492ef6
mov byte [esi + 0x2c], 0
mov byte [esi + 0x2d], 1
mov dword [esi + 0x1038], 9
push 5
push 0x574f35
call fcn.004550bc
pop ecx
pop edx
mov byte [esi + 0xb4], al
xor byte [esi + 0xb4], 1
mov eax, dword [esi + 0x50]
mov dword [esi + 0x1038], 9
xor eax, 3
or eax, dword [esi + 0x54]
je 0x4934ba
mov ecx, dword [esi + 0x44]
lea edx, [esi + 0x1b0]
mov edi, dword [ecx + 4]
mov eax, dword [ecx]
mov byte [esi + 0x2c], 0
mov byte [esi + 0x2d], 1
lea ecx, [esi + 0xf8]
push edi
push eax
call fcn.00422636
pop eax
pop ecx
mov ecx, dword [esi + 0x50]
mov eax, dword [esi + 0x78]
xor ecx, 1
or ecx, dword [esi + 0x54]
jne 0x492fb2
movq xmm2, qword [0x53a500]
movd xmm1, dword [esi + 0x6c]
movd xmm0, eax
por xmm0, xmm2
por xmm1, xmm2
subsd xmm0, xmm2
subsd xmm1, xmm2
cvtsd2ss xmm0, xmm0
cvtsd2ss xmm1, xmm1
divss xmm0, xmm1
ucomiss xmm0, dword [0x53a508]
jae 0x492fef
lea ecx, [esi + 0x50]
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
call fcn.00449731
mov edx, dword [esi + 0x68]
mov eax, dword [esi + 0x6c]
mov dword [esi + 0x10], eax
lea eax, [eax*4]
mov ecx, edx
test eax, eax
je 0x493017
mov dword [ecx], 0xffff
add ecx, 4
add eax, 0xfffffffc
jmp 0x492fa0
mov edx, dword [esi + 0x6c]
mov ecx, edx
mov dword [esi + 4], edx
shr ecx, 2
sub edx, ecx
cmp eax, edx
jne 0x49314b
test eax, eax
je 0x4930c7
mov edx, dword [esi + 4]
lea ecx, [esi + 0x50]
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
add edx, edx
call fcn.00451a5e
jmp 0x49314b
mov edx, dword [esi + 0x6c]
and dword [esi + 0x54], 0
and dword [esi + 0x50], 0
lea ecx, [esi + 0x50]
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
add edx, edx
call fcn.00451a5e
jmp 0x49314b
mov edi, dword [esi + 0x74]
imul eax, dword [esi + 0x78], 0x30
mov dword [esi + 4], edx
add eax, edi
mov dword [esi + 0x20], eax
movzx eax, word [esi + 0x88]
movzx eax, ax
mov dword [esi + 0xc], eax
xor eax, eax
cmp edi, dword [esi + 0x20]
je 0x49314b
lea ecx, [edi + 0x30]
mov dword [esi + 0x14], eax
inc eax
lea edx, [edi + 0x1c]
mov dword [esi + 0x30], ecx
lea ecx, [esi + 0x50]
mov dword [esi + 8], eax
call fcn.0043a056
mov edx, dword [esi + 0xc]
movzx ecx, ax
mov dword [esi + 0x38], eax
xor eax, eax
mov word [edi + 0x2c], cx
and edx, ecx
mov edi, dword [esi + 4]
mov ecx, dword [esi + 0x10]
mov ebx, edx
xor edx, edx
cmp ebx, ecx
jae 0x49306d
cmp word [edi + ebx*4], 0xffff
je 0x493096
movzx edx, word [edi + ebx*4 + 2]
mov ecx, dword [esi + 0xc]
mov edi, ebx
and edx, ecx
sub edi, edx
and edi, ecx
cmp edi, eax
jb 0x4930a7
inc ebx
inc eax
mov edx, ebx
jmp 0x493067
mov eax, dword [esi + 0x14]
mov word [edi + ebx*4], ax
mov eax, dword [esi + 0x38]
mov word [edi + ebx*4 + 2], ax
jmp 0x4930bc
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x10]
push dword [esi + 0x38]
push dword [esi + 0x14]
push ebx
call fcn.0043a99d
add esp, 0xc
mov edi, dword [esi + 0x30]
mov eax, dword [esi + 8]
jmp 0x493035
mov word [esi + 0x88], 7
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
lea ecx, [esi + 0x298]
push 8
pop edx
call fcn.00449253
lea ecx, [esi + 0x298]
mov byte [esi + 3], 1
call fcn.0044916e
mov ebx, edx
mov ecx, dword [esi + 0x68]
mov edx, dword [esi + 4]
mov edi, eax
call fcn.0043a80e
mov dword [esi + 0x68], edi
mov dword [esi + 0x6c], ebx
push 4
pop ecx
mov edx, 0x120
call fcn.004eac93
test eax, eax
mov dword [esi + 4], eax
je 0x494bf1
lea ecx, [esi + 0x70]
mov dword [esi + 0x1038], 0xb
call fcn.00450f7e
mov eax, dword [esi + 4]
mov dword [esi + 0x70], 6
mov dword [esi + 0x74], eax
and dword [esi + 0x78], 0
lea ecx, [esi + 0x50]
lea edx, [esi + 0x130]
call fcn.00451739
movzx ecx, word [esi + 0x88]
mov dword [esi + 0xc], eax
mov edx, dword [esi + 0x68]
mov ebx, dword [esi + 0x6c]
mov edi, dword [esi + 0x78]
mov dword [esi + 4], 0
and eax, ecx
mov dword [esi + 8], ecx
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x20], edi
mov dword [esi + 0x30], edx
mov dword [esi + 0x38], ebx
mov dword [esi + 0xbc], ecx
mov edi, eax
cmp eax, ebx
mov eax, 0
jae 0x49318a
movzx eax, word [edx + edi*4]
cmp eax, 0xffff
je 0x493228
mov ebx, dword [esi + 8]
mov dword [esi + 0x10], eax
movzx eax, word [edx + edi*4 + 2]
mov edx, edi
mov ecx, ebx
and ecx, eax
sub edx, ecx
and edx, ebx
mov ebx, dword [esi + 4]
cmp edx, ebx
mov edx, ebx
jb 0x4932b4
cmp ax, word [esi + 0xc]
jne 0x493216
mov ecx, dword [esi + 0xbc]
mov edx, dword [esi + 0x20]
mov dword [esi + 0x14], edi
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
push 0x574020
push dword [esi + 0x10]
call fcn.00451a43
pop ecx
pop edx
add eax, 0x1c
lea edx, [esi + 0x130]
mov ecx, eax
call fcn.0043abf7
mov edi, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 4]
test al, al
jne 0x4933a1
inc edx
mov ebx, dword [esi + 0x38]
inc edi
mov dword [esi + 4], edx
mov edx, dword [esi + 0x30]
mov eax, edi
jmp 0x49318a
mov eax, dword [esi + 0x78]
lea ecx, [esi + 0xe8]
lea edx, [esi + 0x130]
mov dword [esi + 0x14], edi
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
mov dword [esi + 4], eax
call fcn.0044c40e
movsd xmm0, qword [esi + 0xf8]
movsd xmm1, qword [esi + 0x100]
mov edx, dword [esi + 0xc]
lea eax, [esi + 0x298]
mov byte [esi + 3], 0
lea ecx, [esi + 0x50]
movsd qword [esi + 0x2a0], xmm1
movsd qword [esi + 0x298], xmm0
push eax
lea eax, [esi + 0xe8]
push eax
call fcn.0045226a
pop eax
pop ecx
mov edx, dword [esi + 0x6c]
mov edi, dword [esi + 0x14]
cmp edi, edx
jae 0x494b30
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 4]
mov word [eax + edi*4], cx
mov ecx, dword [esi + 0xc]
mov word [eax + edi*4 + 2], cx
jmp 0x4934ba
mov eax, dword [esi + 0x50]
cmp edx, 0x200
lea ecx, [esi + 0x110]
lea edx, [esi + 0x130]
mov dword [esi + 0x14], edi
mov byte [esi + 3], 1
mov dword [esi + 0x1038], 0xa
setae byte [esi + 4]
xor eax, 2
or eax, dword [esi + 0x54]
setne byte [esi + 0x10]
call fcn.0044c40e
movsd xmm0, qword [esi + 0xf8]
mov eax, dword [esi + 0x78]
movsd xmm1, qword [esi + 0x100]
movsd xmm2, qword [esi + 0x118]
mov edx, dword [esi + 0xc]
mov byte [esi + 3], 0
lea ecx, [esi + 0x50]
movsd qword [esi + 0x298], xmm0
movsd xmm0, qword [esi + 0x110]
mov dword [esi + 8], eax
lea eax, [esi + 0x298]
movsd qword [esi + 0x2a0], xmm1
movsd qword [esi + 0xf0], xmm2
movsd qword [esi + 0xe8], xmm0
push eax
lea eax, [esi + 0xe8]
push eax
call fcn.0045226a
pop eax
pop ecx
mov bl, byte [esi + 4]
mov ecx, dword [esi + 0x68]
mov edx, dword [esi + 0x6c]
and bl, byte [esi + 0x10]
push dword [esi + 0xc]
push dword [esi + 8]
push dword [esi + 0x14]
call fcn.0043a99d
add esp, 0xc
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
cmp eax, 0x7f
seta al
or al, bl
mov edi, ecx
or edi, edx
mov edi, 1
sete ah
test al, ah
cmovne ecx, edi
mov dword [esi + 0x50], ecx
mov ecx, 0
cmovne edx, ecx
mov dword [esi + 0x54], edx
jmp 0x4934ba
mov edx, dword [esi + 0x20]
cmp edx, ecx
jbe 0x494b46
mov edx, dword [esi + 0xbc]
imul eax, ecx, 0x30
cmp dword [edx + eax], 0
lea edi, [edx + eax]
mov dword [esi + 4], edi
je 0x493454
mov edx, dword [edi + 8]
movsd xmm0, qword [esi + 0xf8]
movsd xmm1, qword [esi + 0x100]
lea eax, [esi + 0x2a8]
mov byte [esi + 3], 0
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
mov dword [esi + 0x298], 1
mov dword [esi + 0x29c], edx
and dword [esi + 0x2a0], 0
mov dword [esi + 0x2a4], ecx
mov ecx, dword [esi + 0x84]
mov dword [esi + 0xc], edx
lea edx, [esi + 0x298]
mov dword [esi + 0x10], ecx
lea ecx, [esi + 0x7c]
call fcn.004521c2
mov edx, dword [esi + 0x84]
mov edi, dword [esi + 0xc]
cmp edx, edi
jbe 0x494b5a
mov eax, dword [esi + 0x80]
mov edx, dword [esi + 0x10]
shl edi, 5
xor ecx, ecx
inc ecx
mov dword [eax + edi + 8], ecx
mov dword [eax + edi + 0xc], edx
mov edi, dword [esi + 4]
mov dword [edi], ecx
mov dword [edi + 8], edx
jmp 0x4934ba
movsd xmm0, qword [esi + 0xf8]
movsd xmm1, qword [esi + 0x100]
lea edx, [esi + 0x2a8]
mov eax, dword [esi + 0x84]
mov byte [esi + 3], 0
movsd qword [edx + 8], xmm1
movsd qword [edx], xmm0
and dword [esi + 0x298], 0
mov dword [esi + 0x29c], ecx
and dword [esi + 0x2a0], 0
mov dword [esi + 0x2a4], ecx
lea ecx, [esi + 0x7c]
lea edx, [esi + 0x298]
mov dword [esi + 0xc], eax
call fcn.004521c2
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov dword [eax], 1
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
movsd xmm0, qword [esi + 0x130]
mov eax, dword [esi + 0xd0]
movsd xmm1, qword [esi + 0x138]
movsd xmm2, qword [esi + 0xc8]
mov byte [esi + 0x2c], 1
mov byte [esi + 0x2d], 0
mov dword [esi + 0x1038], 9
lea ecx, [esi + 0x150]
lea edx, [esi + 0xe8]
movsd qword [esi + 0xe8], xmm0
movsd xmm0, qword [esi + 0xc0]
mov dword [esi + 0x2a8], eax
lea eax, [esi + 0x298]
movsd qword [esi + 0xf0], xmm1
movsd qword [esi + 0x2a0], xmm2
movsd qword [esi + 0x298], xmm0
push eax
call fcn.0043b02e
pop eax
mov eax, dword [esi + 0x44]
add eax, 0x10
jmp 0x492c24
mov eax, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
xor ecx, ecx
mov bl, 1
xor eax, 3
mov dword [esi + 0x10], edx
mov dword [esi + 4], eax
or eax, edx
mov al, 1
je 0x493da6
push 0x40
lea eax, [esi + 0x50]
push eax
lea eax, [esi + 0x258]
push eax
call fcn.00527800
add esp, 0xc
mov dword [esi + 0x1038], 0x16
push 0x10
pop ecx
push 4
pop edx
call fcn.004ebf96
movsd xmm0, qword [0x5904a8]
movsd xmm1, qword [0x5904a0]
xor ecx, ecx
mov dword [esi + 0x14], eax
movsd qword [eax + 8], xmm0
movsd qword [eax], xmm1
mov dword [esi + 0x9c], eax
mov byte [esi + 0x1a], 1
mov dword [esi + 0x1038], 0x13
call fcn.0044eea4
mov dword [esi + 0x1038], 0x15
push 0x40
pop ecx
push 8
pop edx
call fcn.004ebf96
mov edi, eax
push 0x40
lea eax, [esi + 0x50]
push eax
push edi
call fcn.00527800
add esp, 0xc
mov ecx, dword [esi + 0x14]
mov edx, 0x815bb67a
mov byte [esi + 0x1a], 0
mov dword [esi + 0x1038], 0x13
mov dword [esi + 0x9c], ecx
push 0x573edc
push edi
push 0xdca76215
push 0x151723e5
push 0xb40769b4
call fcn.004487b5
add esp, 0x14
test eax, eax
je 0x493d99
mov dword [esi + 0x1038], 0x14
mov dword [esi + 0xc], eax
push eax
lea eax, [esi + 0x200]
push eax
mov dword [esi + 8], edx
call dword [edx + 0xc]
add esp, 8
mov eax, dword [esi + 0x20c]
mov ecx, dword [esi + 0x208]
mov edi, dword [esi + 0x200]
mov edx, dword [esi + 0x204]
xor edi, 0x815bb67a
xor ecx, 0x151723e5
xor edx, 0xb40769b4
xor eax, 0xdca76215
or ecx, edi
or eax, edx
or eax, ecx
jne 0x493d77
push 0x40
mov edi, dword [esi + 0xc]
push edi
lea eax, [esi + 0x298]
push eax
call fcn.00527800
add esp, 0xc
mov ecx, edi
push 8
pop edx
call fcn.00420590
mov eax, dword [esi + 0x298]
xor eax, 3
or eax, dword [esi + 0x29c]
je 0x493d99
mov eax, dword [esi + 0x14]
xor ecx, ecx
mov dword [esi + 0x1038], 0xd
mov byte [esi + 0x1b], cl
mov byte [esi + 0x1d], cl
mov dword [esi + 0xa0], eax
mov al, 1
mov byte [esi + 0x1c], al
mov byte [esi + 0x1e], al
lea eax, [esi + 0x298]
push eax
call fcn.00450f0a
pop eax
jmp 0x493d99
cmp ecx, ebx
jbe 0x4942aa
mov cl, byte [edx + eax + 4]
add eax, 5
mov dword [esi + 0x58], eax
cmp cl, 0xa
jne 0x4944ab
lea ecx, [esi + 0x50]
call fcn.0044e326
mov dword [esi + 0x38], 0
mov edi, 0x5b8dd0
movzx eax, byte [esi + 0x14]
movzx ecx, byte [esi + 8]
mov dword [esi + 0xb4], edi
mov dword [esi + 0xc], 0
mov dword [esi + 0x20], 0
imul eax, eax, 0x64
imul ecx, ecx, 0xa
add ecx, eax
movzx eax, byte [esi + 0x30]
add eax, ecx
mov dword [esi + 0x10c], eax
mov eax, dword [esi + 4]
sub eax, dword [esi + 0x54]
mov dword [esi + 4], eax
xor eax, eax
mov dword [esi + 0xbc], eax
shl eax, 4
lea eax, [esi + eax + 0x298]
mov dword [esi + 0xe4], eax
mov ecx, dword [esi + 0x54]
mov eax, dword [esi + 0x58]
cmp ecx, eax
mov dword [esi + 0x14], eax
mov dword [esi + 8], ecx
jbe 0x4942aa
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], eax
movzx eax, byte [eax + ecx]
lea edi, [ecx + 1]
mov dword [esi + 0x58], edi
cmp eax, 0xa
je 0x494158
cmp eax, 0xd
je 0x494161
cmp byte [eax + 0x585318], 0
je 0x4938c5
mov edi, ecx
mov eax, dword [esi + 0x30]
not edi
add edi, dword [esi + 8]
lea eax, [eax + ecx + 2]
mov ebx, dword [esi + 0x14]
mov ecx, eax
lea eax, [ebx + 1]
cmp dword [esi + 8], eax
mov dword [esi + 0x14], eax
jbe 0x4942aa
mov eax, dword [esi + 0x30]
dec edi
movzx edx, byte [eax + ebx + 1]
lea eax, [ecx + 1]
cmp byte [edx + 0x585318], 0
jne 0x4937b7
mov eax, dword [esi + 8]
lea edi, [ebx + 2]
and dword [esi + 0x58], 0
mov dword [esi + 0xa8], edi
add dword [esi + 0x20], edi
sub eax, edi
mov edi, dword [esi + 0x30]
cmp dl, 0x3a
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0xa8]
lea edi, [edi + eax]
mov eax, dword [esi + 0x44]
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], eax
jne 0x493901
mov eax, dword [esi + 0x20]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x50]
mov ebx, dword [esi + 0x54]
mov edi, dword [esi + 0x58]
mov dword [esi + 8], eax
cmp ebx, edi
jbe 0x4942aa
mov eax, dword [esi + 8]
lea ecx, [edi + 1]
mov edx, edi
movzx eax, byte [eax + edi]
mov edi, ecx
mov dword [esi + 0x58], ecx
cmp eax, 0x20
je 0x4938b5
cmp eax, 9
je 0x4938b5
cmp byte [eax + 0x573a99], 0
jne 0x493967
cmp eax, 0xa
je 0x493885
cmp eax, 0xd
jne 0x493bea
cmp ebx, edi
jbe 0x4942aa
mov eax, dword [esi + 8]
mov edi, edx
add edi, 2
mov al, byte [eax + edx + 1]
mov dword [esi + 0x58], edi
cmp al, 0xa
jne 0x494283
cmp byte [esi + 0x42], 0
je 0x493c9a
lea ecx, [esi + 0x50]
call fcn.0044e34a
test al, 1
je 0x4942aa
cmp dl, 9
je 0x493828
movzx eax, dl
cmp eax, 0x20
je 0x493828
jmp 0x493c9a
lea ecx, [esi + 0x50]
call fcn.0044e326
add dword [esi + 0x44], edi
jmp 0x49381c
cmp byte [esi + 0x36], 0
je 0x4940d2
test al, al
je 0x4940d2
movzx eax, al
cmp eax, 0xa
je 0x493b91
cmp eax, 0xd
je 0x493b76
cmp dword [esi + 8], edi
jbe 0x4942aa
mov eax, dword [esi + 0x30]
mov al, byte [eax + edi]
inc edi
mov dword [esi + 0x58], edi
jmp 0x4938cf
cmp byte [esi + 0xb9], 0
mov dword [esi + 0xa8], edi
je 0x493ba1
mov eax, dword [esi + 0x30]
mov edi, dword [esi + 0x14]
sub ebx, dword [esi + 8]
add eax, edi
mov dword [esi + 8], eax
xor eax, eax
inc eax
mov edi, eax
cmp dl, 0x20
je 0x493938
movzx eax, dl
cmp eax, 9
jne 0x493ba5
lea eax, [ebx + edi]
cmp eax, 0xffffffff
je 0x4942aa
mov eax, dword [esi + 8]
mov dl, byte [eax + edi]
lea eax, [edi + 1]
mov dword [esi + 0x58], edi
cmp dl, 0x3a
jne 0x493925
lea ecx, [esi + 0x50]
call fcn.0044e326
mov eax, dword [esi + 0x20]
add eax, edi
jmp 0x493819
mov ecx, dword [0x5dc7d8]
test ecx, ecx
jne 0x4939a0
mov eax, dword [0x5dc8c8]
test eax, eax
jne 0x493989
mov dword [esi + 0x1038], 1
call fcn.00538dd0
xor ecx, ecx
bt eax, 0xb
mov eax, 0xffffffff
jae 0x49399b
xor ecx, ecx
inc ecx
mov eax, ecx
mov dword [0x5dc7d8], eax
cmp ecx, 1
jne 0x4939d3
mov dword [esi + 0x1038], 1
lea ecx, [esi + 0x50]
call fcn.0044e377
cmp edx, 0x10
jb 0x4939d3
lea ecx, [esi + 0x50]
call fcn.0044e377
mov ecx, eax
call fcn.0044e396
add dword [esi + 0x58], eax
cmp eax, 0x10
je 0x4939af
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x54]
mov ecx, dword [esi + 0x58]
mov dword [esi + 8], edi
cmp ecx, 0xfffffff7
mov eax, ecx
ja 0x493aa0
lea ecx, [eax + 8]
cmp ecx, ebx
ja 0x493aa0
movq xmm0, qword [edi + eax]
mov dword [esi + 0x20], eax
movdqa xmmword [esi + 0x240], xmm0
movzx eax, byte [esi + 0x240]
cmp byte [eax + 0x573a99], 0
je 0x493ac1
movd edx, xmm0
mov edi, ebx
mov eax, edx
shr eax, 8
movzx ebx, al
cmp byte [ebx + 0x573a99], 0
je 0x493ac7
mov eax, edx
shr eax, 0x10
movzx ebx, al
cmp byte [ebx + 0x573a99], 0
je 0x493acf
shr edx, 0x18
mov ebx, edi
cmp byte [edx + 0x573a99], 0
je 0x493ade
pextrw eax, xmm0, 2
movzx edx, al
cmp byte [edx + 0x573a99], 0
je 0x493ae8
shr eax, 8
cmp byte [eax + 0x573a99], 0
je 0x493af0
pextrw eax, xmm0, 3
movzx edx, al
cmp byte [edx + 0x573a99], 0
je 0x493af8
shr eax, 8
cmp byte [eax + 0x573a99], 0
je 0x493afe
mov edi, dword [esi + 8]
mov dword [esi + 0x58], ecx
jmp 0x4939df
cmp ebx, eax
jbe 0x4942aa
mov ecx, eax
movzx eax, byte [edi + eax]
inc ecx
mov dword [esi + 0x58], ecx
cmp byte [eax + 0x573a99], 0
jne 0x4939df
jmp 0x493b04
mov ecx, dword [esi + 0x20]
inc ecx
jmp 0x493afe
mov ecx, dword [esi + 0x20]
add ecx, 2
jmp 0x493ad5
mov ecx, dword [esi + 0x20]
add ecx, 3
mov edx, dword [esi + 8]
mov ebx, edi
mov edi, edx
jmp 0x493b01
mov ecx, dword [esi + 0x20]
mov eax, edx
add ecx, 4
jmp 0x493afe
mov ecx, dword [esi + 0x20]
add ecx, 5
jmp 0x493afe
mov ecx, dword [esi + 0x20]
add ecx, 6
jmp 0x493afe
mov ecx, dword [esi + 0x20]
add ecx, 7
mov edi, dword [esi + 8]
mov dword [esi + 0x58], ecx
cmp al, 0xa
mov dword [esi + 0x20], ecx
je 0x493b39
movzx ecx, al
cmp ecx, 0xd
jne 0x493c4e
cmp ebx, dword [esi + 0x20]
jbe 0x4942aa
mov ecx, dword [esi + 0x20]
mov al, byte [edi + ecx]
inc ecx
mov dword [esi + 0x20], ecx
mov dword [esi + 0x58], ecx
cmp al, 0xa
push 0xfffffffffffffffe
pop eax
je 0x493b3c
jmp 0x494283
xor eax, eax
dec eax
cmp byte [esi + 0x42], 0
mov dword [esi + 0xa8], eax
je 0x493d57
lea ecx, [esi + 0x50]
call fcn.0044e34a
test al, 1
je 0x4942aa
cmp dl, 9
je 0x493967
movzx eax, dl
cmp eax, 0x20
je 0x493967
jmp 0x493d57
cmp dword [esi + 8], edi
jbe 0x4942aa
mov eax, dword [esi + 0x30]
mov al, byte [eax + edi]
inc edi
mov dword [esi + 0x58], edi
cmp al, 0xa
jne 0x4940d2
add dword [esi + 0x20], edi
lea ecx, [esi + 0x50]
call fcn.0044e326
jmp 0x493763
xor edi, edi
jmp 0x493ba6
dec edi
cmp byte [esi + 0x36], 0
je 0x4940d2
add ecx, edi
test dl, dl
je 0x4940d2
movzx eax, dl
cmp eax, 0xa
je 0x493b91
cmp eax, 0xd
je 0x493bd9
cmp dword [esi + 0x44], edi
jbe 0x4942aa
mov dl, byte [ecx]
inc edi
inc ecx
mov dword [esi + 0x58], edi
jmp 0x493bb2
cmp dword [esi + 0x44], edi
jbe 0x4942aa
mov eax, dword [esi + 0xa8]
jmp 0x493b82
cmp byte [esi + 0x36], 0
je 0x494283
test al, al
je 0x494283
movzx eax, al
cmp eax, 0xa
je 0x493c3b
cmp eax, 0xd
je 0x493c21
cmp ebx, edi
jbe 0x4942aa
mov eax, dword [esi + 8]
mov ecx, edi
inc ecx
mov al, byte [eax + edi]
mov edi, ecx
mov dword [esi + 0x58], ecx
jmp 0x493bf4
cmp ebx, edi
jbe 0x4942aa
mov eax, dword [esi + 8]
mov al, byte [eax + edi]
inc edi
mov dword [esi + 0x58], edi
cmp al, 0xa
jne 0x494283
lea ecx, [esi + 0x50]
call fcn.0044e326
add edi, dword [esi + 0x44]
mov dword [esi + 0x20], edi
jmp 0x493763
cmp byte [esi + 0x36], 0
je 0x494283
test al, al
je 0x494283
movzx eax, al
cmp eax, 0xa
je 0x493c85
cmp eax, 0xd
je 0x493c8a
cmp ebx, dword [esi + 0x20]
jbe 0x4942aa
mov ecx, dword [esi + 0x20]
mov al, byte [edi + ecx]
inc ecx
mov dword [esi + 0x20], ecx
mov dword [esi + 0x58], ecx
jmp 0x493c58
mov edi, dword [esi + 0x20]
jmp 0x493c3b
cmp ebx, dword [esi + 0x20]
jbe 0x4942aa
mov eax, edi
mov edi, dword [esi + 0x20]
jmp 0x493c2c
lea ecx, [esi + 0x50]
mov dword [esi + 8], edi
call fcn.0044e326
mov dword [esi + 0x1038], 1
mov ecx, eax
push 0x573b9c
push 0
call fcn.0044e361
pop ecx
pop edi
mov ecx, dword [esi + 8]
mov edi, eax
mov dword [esi + 0x20], ecx
mov eax, dword [esi + 0xbc]
cmp eax, 0x64
je 0x494773
mov ecx, dword [esi + 0x44]
inc eax
mov dword [esi + 0xa8], edx
mov dword [esi + 0xbc], eax
add dword [esi + 0x20], ecx
test edx, edx
je 0x493d2c
movzx ecx, byte [edi + edx - 1]
mov eax, edx
add ecx, 0xfffffff7
cmp ecx, 0x17
ja 0x493d09
mov ebx, 0x800013
lea edx, [eax - 1]
bt ebx, ecx
jb 0x493ce9
mov edx, dword [esi + 0xa8]
mov dword [esi + 0x1038], 1
mov ecx, edi
push 0x573bac
push eax
call fcn.0044e361
pop ecx
pop edi
mov edi, eax
jmp 0x493d32
mov edx, dword [esi + 0xa8]
mov eax, dword [esi + 0xe4]
mov ecx, dword [esi + 0x30]
mov ebx, dword [esi + 0x14]
inc dword [esi + 0xc]
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
mov eax, dword [esi + 0xbc]
jmp 0x49374d
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0xa8]
and dword [esi + 0x58], 0
mov eax, edi
add eax, ecx
sub ebx, ecx
add edx, ecx
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], ebx
jmp 0x493cc7
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov byte [esi + 0x1a], 0
mov dword [esi + 0x1038], 0x13
mov dword [esi + 0x9c], eax
call fcn.00404402
mov edi, dword [esi + 0xb0]
mov ecx, dword [esi + 0x14]
xor eax, eax
mov bl, 1
mov edx, dword [esi + 0x140]
mov dword [esi + 8], eax
mov dword [esi + 0x14], ecx
test edx, edx
mov dword [esi + 0x30], edx
je 0x493f9c
movsd xmm0, qword [esi + 0x140]
movsd xmm1, qword [esi + 0x148]
test ecx, ecx
movsd qword [esi + 0x218], xmm1
movsd qword [esi + 0x210], xmm0
jne 0x493e2d
mov dword [esi + 0x1038], 0x12
push 0x10
pop ecx
push 4
pop edx
call fcn.004ebf96
movsd xmm0, qword [0x5904a8]
movsd xmm1, qword [0x5904a0]
xor ecx, ecx
mov dword [esi + 0x14], eax
movsd qword [eax + 8], xmm0
movsd qword [eax], xmm1
mov dword [esi + 0xa4], eax
mov byte [esi + 0x1f], 1
mov dword [esi + 0x1038], 0xf
call fcn.0044eea4
movsd xmm0, qword [esi + 0x210]
movsd xmm1, qword [esi + 0x218]
mov dword [esi + 0x1038], 0x11
movsd qword [esi + 0x2a0], xmm1
movsd qword [esi + 0x298], xmm0
push 0x10
pop ecx
push 4
pop edx
call fcn.004ebf96
movsd xmm0, qword [esi + 0x298]
movsd xmm1, qword [esi + 0x2a0]
mov ecx, dword [esi + 0x14]
mov edx, 0x44f92fb6
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
mov dword [esi + 0xa4], ecx
mov byte [esi + 0x1f], 0
mov dword [esi + 0x1038], 0xf
push 0x573eec
push eax
push 0x82492225
push 0xcceb391c
push 0xbbb0bfac
call fcn.004487b5
add esp, 0x14
test eax, eax
je 0x493f94
mov dword [esi + 0x1038], 0x10
mov dword [esi + 0xc], eax
push eax
lea eax, [esi + 0x1f0]
push eax
mov dword [esi + 0x38], edx
call dword [edx + 0xc]
add esp, 8
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1f8]
mov edi, dword [esi + 0x1f0]
mov edx, dword [esi + 0x1f4]
xor edi, 0x44f92fb6
xor ecx, 0xcceb391c
xor edx, 0xbbb0bfac
xor eax, 0x82492225
or ecx, edi
or eax, edx
or eax, ecx
jne 0x493f72
mov ecx, dword [esi + 0xc]
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
movsd qword [esi + 0x2a0], xmm1
movsd qword [esi + 0x298], xmm0
push 4
pop edx
call fcn.00420590
cmp dword [esi + 0x298], 0
je 0x493f94
mov eax, dword [esi + 0x14]
mov byte [esi + 0x1e], 1
mov dword [esi + 0x1038], 0xd
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 8]
mov byte [esi + 0x1b], al
xor eax, eax
mov byte [esi + 0x1c], al
mov byte [esi + 0x1d], al
lea eax, [esi + 0x298]
push eax
call fcn.004397ed
pop eax
jmp 0x493f94
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x38]
mov byte [esi + 0x1f], 0
mov dword [esi + 0x1038], 0xf
mov dword [esi + 0xa4], eax
call fcn.00404402
mov edi, dword [esi + 0xb0]
xor ebx, ebx
push 0x40
lea eax, [esi + 0x150]
push eax
lea eax, [esi + 0x298]
push eax
call fcn.00527800
add esp, 0xc
mov ecx, dword [esi + 0x10c]
mov eax, dword [esi + 0xe0]
mov edx, dword [esi + 0x14]
mov dword [esi + 0xc], ebx
cmp cx, 0x64
mov byte [esi + 0x2de], al
mov word [esi + 0x2dc], cx
mov dword [esi + 0x2d8], edx
je 0x49400e
movzx eax, cx
cmp eax, 0x65
je 0x49451b
cmp eax, 0xcc
je 0x49453d
cmp eax, 0x130
je 0x49453d
lea eax, [ecx - 0x66]
cmp ax, 0x62
jae 0x4944f0
cmp dword [edi + 0xe4], 0
mov dword [esi + 0x1038], 0xd
je 0x4944b2
mov eax, dword [esi + 8]
lea ecx, [esi + 0x298]
mov dword [esi + 0xa0], edx
mov byte [esi + 0x1c], bl
mov byte [esi + 0x1d], 1
mov byte [esi + 0x1e], 0
mov byte [esi + 0x1b], al
call fcn.00455de1
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
or dword [esi + 4], eax
jne 0x49407d
mov eax, dword [esi + 0x50]
xor eax, 3
or eax, dword [esi + 0x54]
je 0x49407d
lea eax, [esi + 0x50]
mov byte [esi + 0x2a], cl
mov byte [esi + 0x2b], 0
mov dword [esi + 0x1038], 5
push eax
call fcn.00450f0a
mov ecx, dword [esi + 0xc]
add esp, 4
lea eax, [esi + 0x1b0]
mov byte [esi + 0x28], cl
mov byte [esi + 0x29], 0
mov dword [esi + 0x1038], 3
push eax
call fcn.004397ed
pop eax
cmp dword [esi + 0x30], 0
jne 0x4940c1
cmp dword [esi + 0x140], 0
je 0x4940c1
lea eax, [esi + 0x140]
mov dword [esi + 0x1038], 1
push eax
call fcn.004397ed
pop eax
mov eax, dword [esi + 0xb0]
mov ecx, dword [eax + 0xe4]
jmp 0x49244e
mov eax, dword [esi + 0x24]
and eax, 0xffffff00
mov dword [esi + 0x24], eax
jmp 0x492790
cmp dword [esi + 0xc], edx
jbe 0x4942aa
cmp byte [edi + edx], 0xa
jne 0x4944ab
mov ebx, dword [esi + 0x38]
mov eax, dword [esi + 0xc]
and dword [esi + 0x58], 0
lea edx, [ebx + 2]
sub eax, edx
lea edx, [edi + ebx + 2]
test cl, 1
mov ecx, 0
mov dword [esi + 0x50], edx
mov edx, 0x5b8dd0
cmovne ebx, ecx
mov dword [esi + 0x54], eax
cmovne edi, edx
mov dword [esi + 0x38], ebx
jmp 0x493712
mov eax, dword [esi + 0xc]
and dword [esi + 0x58], 0
sub eax, edx
add edx, edi
test cl, 1
mov dword [esi + 0x50], edx
mov edx, dword [esi + 0x38]
mov dword [esi + 0x54], eax
mov eax, 0x5b8dd0
cmovne edi, eax
mov eax, 0
cmovne edx, eax
mov dword [esi + 0x38], edx
jmp 0x493712
add edi, dword [esi + 0x20]
mov eax, edi
mov ecx, edi
jmp 0x494187
cmp dword [esi + 8], edi
jbe 0x4942aa
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x14]
mov al, byte [eax + ecx + 1]
add ecx, 2
mov dword [esi + 0x58], ecx
cmp al, 0xa
jne 0x494293
add ecx, dword [esi + 0x20]
mov eax, ecx
and eax, 0xffffff00
movzx ecx, cl
mov ebx, dword [esi + 0xb4]
or ecx, eax
mov dword [esi + 0x24], ecx
mov ecx, dword [esi + 0x10c]
lea eax, [ecx - 0x3e8]
cmp ax, 0xfc7c
jb 0x49477e
call fcn.0044ccfc
test eax, eax
je 0x4941d3
mov edi, edx
mov edx, dword [esi + 0x38]
mov ecx, ebx
push edi
push eax
call fcn.004a6d37
pop ecx
pop edx
test al, al
je 0x4941d3
and dword [esi + 0x50], 0
jmp 0x4941eb
mov dword [esi + 0x1038], 1
lea ecx, [esi + 0x50]
mov edx, ebx
push dword [esi + 0x38]
call fcn.004224a3
pop eax
mov edi, dword [esi + 4]
mov eax, dword [esi + 0xc]
xor ecx, ecx
add edi, dword [esi + 0x24]
shl eax, 4
mov dword [esi + 4], eax
cmp dword [esi + 4], ecx
je 0x494259
mov edx, dword [esi + ecx + 0x29c]
cmp edx, 0xffff
ja 0x49461c
mov ebx, edi
mov edi, dword [esi + ecx + 0x298]
mov eax, dword [esi + 0x10]
sub edi, eax
add edx, edi
mov dword [esi + ecx + 0x9e8], edi
mov edi, dword [esi + ecx + 0x2a0]
mov dword [esi + ecx + 0x9ec], edx
sub edi, eax
mov eax, dword [esi + ecx + 0x2a4]
mov dword [esi + ecx + 0x9f0], edi
add eax, edi
mov edi, ebx
mov dword [esi + ecx + 0x9f4], eax
add ecx, 0x10
jmp 0x4941fc
lea ecx, [esi + 0x54]
mov eax, dword [esi + 0x50]
mov dword [esi + 0x1038], 2
movq xmm0, qword [ecx]
mov ecx, dword [ecx + 8]
movq qword [esi + 0x150], xmm0
mov dword [esi + 0x158], ecx
jmp 0x4927c4
mov eax, dword [esi + 0x24]
and eax, 0xffffff00
or eax, 1
jmp 0x4940da
mov eax, dword [esi + 0x24]
and eax, 0xffffff00
or eax, 2
jmp 0x4940da
xor eax, eax
jmp 0x494353
xor edx, edx
push 3
pop eax
lea ecx, [esi + 0x1c8]
jmp 0x4942d1
push 2
pop eax
movsx eax, al
lea ecx, [esi + 0x1c8]
xor edx, edx
mov al, byte [eax + 0x5ba518]
mov dword [esi + 0x3c], eax
push 4
pop eax
mov dword [esi + 0x10], eax
and dword [esi + 0x1038], 0
mov dword [esi + 4], edx
call fcn.004734ce
or dword [esi + 0x1038], 0xffffffff
lea ecx, [esi + 0x1c8]
call fcn.0043d490
mov eax, dword [esi + 0x10]
movzx edi, byte [esi + 0x3c]
mov ebx, dword [esi + 0xb0]
xor eax, 4
or eax, dword [esi + 4]
je 0x4947af
push 0x3c
lea eax, [esi + 0x970]
push eax
lea eax, [esi + 0x9ac]
push eax
call fcn.00527800
add esp, 0xc
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x1c3]
mov dl, byte [esi + 0x1c7]
xor ecx, 3
mov dword [esi + 0x128], eax
mov byte [esi + 0x12c], dl
or ecx, dword [esi + 4]
jne 0x4947bc
mov eax, dword [ebx + 0xe4]
xor ecx, ecx
cmp byte [ebx + 0xc8], 0
sete cl
cmp eax, dword [ebx + ecx*4 + 0xcc]
jae 0x494787
mov edx, dword [esi + 0x1ac]
lea ecx, [esi + 0x298]
push dword [ebp + 8]
call fcn.0049077b
pop eax
cmp byte [esi + 0x298], 5
je 0x49478e
mov ecx, dword [esi + 0x29c]
mov eax, dword [esi + 0x298]
lea edx, [esi + 0x1e8]
mov dword [esi + 0x1ec], ecx
lea ecx, [esi + 0x9e8]
mov dword [esi + 0x1e8], eax
call fcn.0049234c
cmp dword [esi + 0x9e8], 0
jne 0x494798
cmp dword [esi + 0x9ec], 0
jne 0x49242f
jmp 0x4947a8
lea ecx, [esi + 0x110]
call fcn.0042295a
mov al, 0xb
mov cl, 1
mov dword [esi + 4], 0
mov dword [esi + 0x3c], eax
push 4
pop eax
mov dword [esi + 0x10], eax
mov dl, 1
mov al, 1
test cl, cl
mov dword [esi + 0xc], edx
je 0x49442a
mov ecx, dword [esi + 0x50]
xor ecx, 3
or ecx, dword [esi + 0x54]
je 0x49442a
mov byte [esi + 0x2b], al
lea eax, [esi + 0x50]
mov byte [esi + 0x2a], dl
mov dword [esi + 0x1038], 5
push eax
call fcn.00450f0a
mov edx, dword [esi + 0xc]
add esp, 4
mov eax, dword [esi + 0xe4]
cmp dword [esi + 0x44], eax
je 0x494450
lea ecx, [esi + 0x150]
mov byte [esi + 0x37], dl
mov dword [esi + 0x1038], 4
call fcn.0044ee2e
mov edx, dword [esi + 0xc]
lea eax, [esi + 0x1b0]
mov byte [esi + 0x28], dl
mov byte [esi + 0x29], 0
mov dword [esi + 0x1038], 3
push eax
call fcn.004397ed
pop eax
cmp byte [esi + 0xc], 0
je 0x494494
cmp dword [esi + 0x140], 0
je 0x494494
lea eax, [esi + 0x140]
mov dword [esi + 0x1038], 1
push eax
call fcn.004397ed
pop eax
and dword [esi + 0x1038], 0
lea ecx, [esi + 0x1c8]
call fcn.004734ce
jmp 0x4942e3
push 3
jmp 0x4942b9
mov dword [esi + 4], 0
push 3
pop eax
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
lea ecx, [esi + 0x298]
mov dword [esi + 0xa0], edx
mov byte [esi + 0x1b], al
mov byte [esi + 0x1c], bl
mov byte [esi + 0x1d], 1
mov byte [esi + 0x1e], 0
mov dword [esi + 0x1038], 0xd
call fcn.00455de1
jmp 0x4945ba
movzx eax, byte [edi + 0x78]
cmp eax, 0xb
je 0x4945c7
cmp eax, 5
je 0x49453d
cmp eax, 7
jne 0x4945c7
add ecx, 0xffffff38
cmp cx, 0x64
jae 0x4945c7
mov al, 1
mov dword [esi + 0xac], 0
mov dword [esi + 0x94], 0
mov dword [esi + 0x3c], 0
mov dword [esi + 0x48], eax
jmp 0x49455d
mov al, 1
mov dword [esi + 0xac], 0
mov dword [esi + 0x94], 0
mov dword [esi + 0x3c], eax
mov dword [esi + 0x48], 0
mov eax, dword [esi + 0x298]
movzx ecx, word [esi + 0x2a1]
mov bl, byte [esi + 0x2a0]
mov dword [esi + 0x10], eax
movzx eax, byte [esi + 0x2a3]
shl eax, 0x10
or ecx, eax
mov eax, dword [esi + 0x29c]
mov dword [esi + 0x98], ecx
mov dword [esi + 4], eax
push 0x3c
lea eax, [esi + 0x2a4]
push eax
lea eax, [esi + 0x970]
push eax
call fcn.00527800
add esp, 0xc
mov al, byte [esi + 0xb4]
and al, byte [esi + 0x3c]
mov byte [esi + 0xb8], al
mov eax, ebx
mov dword [esi + 0x3c], eax
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor eax, eax
jmp 0x4943f9
and dword [esi + 0xcc], 0
and dword [esi + 0xc8], 0
and dword [esi + 0xc0], 0
lea ecx, [esi + 0x298]
lea edx, [esi + 0xc0]
mov dword [esi + 0xc4], 0x45
mov dword [esi + 0x1038], 0xe
call fcn.0043aa84
test al, al
je 0x49463c
cmp byte [esi + 0x2de], 1
jne 0x49468b
mov al, 2
mov dword [esi + 4], 0
jmp 0x494748
lea ecx, [esi + 0x50]
mov dword [esi + 0x1038], 1
call fcn.0043b596
xor edx, edx
mov al, 9
mov dword [esi + 0x3c], eax
push 4
jmp 0x4942ae
lea ecx, [esi + 0x230]
lea edx, [esi + 0x298]
call fcn.00455308
cmp dword [esi + 0x230], 1
jne 0x494704
mov eax, dword [esi + 0x23c]
mov ecx, dword [esi + 0x238]
mov dword [esi + 4], 0
cmp ecx, 0xfffffffe
mov edx, eax
sbb edx, 0xffffffff
jae 0x494746
mov dl, 1
mov dword [esi + 0xac], ecx
mov dword [esi + 0x3c], edx
jmp 0x494768
and dword [esi + 0xcc], 0
and dword [esi + 0xc8], 0
and dword [esi + 0xc0], 0
lea eax, [esi + 0xc0]
mov dword [esi + 0xc4], 0x45
lea ecx, [esi + 0xe8]
lea edx, [esi + 0x298]
push eax
call fcn.00452d6b
pop eax
lea ecx, [esi + 0xc0]
lea edx, [esi + 0xe8]
call fcn.00453ef8
lea ecx, [esi + 0xc0]
call fcn.00455d04
movzx eax, al
mov dword [esi + 0x48], 0
not eax
mov dword [esi + 0xac], eax
mov al, 1
mov dword [esi + 0x3c], eax
xor eax, eax
dec eax
mov dword [esi + 0x94], eax
jmp 0x49455d
and dword [esi + 0xcc], 0
and dword [esi + 0xc8], 0
and dword [esi + 0xc0], 0
lea ecx, [esi + 0x298]
lea edx, [esi + 0xc0]
mov dword [esi + 0xc4], 0x18
call fcn.0043aa84
mov cl, 1
test al, al
mov dword [esi + 0x3c], ecx
je 0x49475f
mov dword [esi + 4], 0
jmp 0x49474b
mov al, 9
mov dword [esi + 0x3c], eax
push 4
pop eax
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x14]
jmp 0x4944c2
xor eax, eax
dec eax
mov dword [esi + 0xac], eax
mov dword [esi + 0x94], eax
jmp 0x494556
push 5
pop eax
mov dword [esi + 0x24], eax
jmp 0x4942ba
xor edx, edx
mov al, 0xa
jmp 0x494632
push 9
pop edx
xor ecx, ecx
jmp 0x4947b3
xor ecx, ecx
push 4
pop edx
mov dword [esi + 0x48], eax
jmp 0x4947ff
mov edi, dword [esi + 0x9ec]
xor ecx, ecx
push 3
pop edx
mov dword [esi + 0x48], eax
jmp 0x4947ff
call fcn.00454ce9
jmp 0x4947b8
xor ecx, ecx
mov edx, edi
call fcn.0044fef6
mov edi, eax
jmp 0x49482a
mov eax, dword [esi + 0x98]
shl eax, 8
or eax, edi
mov edi, eax
lea eax, [esi + 0x934]
push 0x3c
lea ecx, [esi + 0x9ac]
push ecx
push eax
call fcn.00527800
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 4]
add esp, 0xc
mov eax, dword [esi + 0x128]
mov dword [esi + 0x120], eax
mov ah, byte [esi + 0x12c]
mov byte [esi + 0x124], ah
mov eax, edx
xor eax, 3
or eax, ecx
je 0x49482a
mov eax, edx
xor eax, 4
or eax, ecx
jne 0x494896
mov eax, dword [esi + 0xdc]
and dword [eax + 4], 0
mov dword [eax], 5
jmp 0x494b1c
mov cl, byte [ebx + 0x9a]
and dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 4
mov byte [ebx + 0x9a], 2
mov dword [esi + 0x150], edi
mov dword [esi + 0x98], edi
mov eax, dword [ebx + 0xe4]
test eax, eax
je 0x4949c8
mov byte [esi + 4], cl
mov ecx, dword [esi + 0xd8]
xor edx, edx
mov ecx, dword [ecx]
cmp eax, edx
je 0x494882
movzx edi, byte [ecx + edx]
cmp edi, 0xd
je 0x49487f
cmp edi, 0xa
jne 0x494995
inc edx
jmp 0x494869
mov edx, eax
mov dword [esi + 0x50], eax
mov dword [esi + 0x1038], 0x19
jmp 0x4949aa
mov dword [esi + 0x98], edi
lea edi, [esi + 0x8e4]
lea eax, [esi + 0x934]
push 0x3c
push eax
push edi
mov dword [esi + 4], ecx
mov dword [esi + 0x10], edx
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0x94]
mov edx, dword [esi + 0xac]
mov ecx, dword [esi + 0x48]
mov dword [edi + 0x40], eax
xor eax, eax
mov dword [edi + 0x3c], edx
mov byte [edi + 0x44], al
mov al, byte [esi + 0xb8]
mov byte [edi + 0x45], al
mov byte [edi + 0x46], cl
mov ecx, dword [esi + 0x120]
mov dword [edi + 0x47], ecx
mov cl, byte [esi + 0x124]
mov byte [edi + 0x4b], cl
mov ecx, eax
mov eax, dword [esi + 4]
mov dword [edi - 8], eax
mov eax, dword [esi + 0x10]
mov dword [edi - 0xc], eax
mov eax, dword [esi + 0x98]
mov dword [edi - 4], eax
xor eax, eax
mov byte [ebx + 0x98], al
cmp byte [ebx + 0x9a], 2
jne 0x49491e
test cl, cl
jne 0x49492b
xor eax, eax
cmp cl, 1
adc al, 1
mov byte [ebx + 0x9a], al
mov edi, dword [esi + 0x94]
cmp byte [esi + 0x48], 0
mov ecx, edx
mov eax, edx
mov edx, edi
setne byte [esi + 4]
xor ecx, 0xfffffffe
not edx
or edx, ecx
mov dl, byte [esi + 0x91e]
mov byte [ebx + 0x9b], dl
je 0x494acc
mov edx, eax
and eax, edi
cmp eax, 0xffffffff
je 0x494ac8
mov eax, edx
xor ecx, ecx
or eax, edi
jne 0x494ad2
mov edx, dword [ebp + 8]
and dword [ebx + 0x44], 0
mov ecx, ebx
mov dword [ebx + 0x40], 3
mov dword [esi + 0x1038], 0x1b
call fcn.004905a0
jmp 0x494aea
cmp eax, edx
mov dword [esi + 0x50], edx
mov dword [esi + 0x1038], 0x19
jb 0x494c04
mov ecx, dword [esi + 0xd8]
mov byte [esi + 0x2f], 1
call fcn.0042290e
mov edi, dword [esi + 0x98]
mov ebx, dword [esi + 0xb0]
mov cl, byte [esi + 4]
cmp byte [edi + 0x18], 0
je 0x494a16
test cl, cl
jne 0x494a16
cmp dword [ebx + 0xe4], 0
jne 0x494a16
mov eax, dword [esi + 0xdc]
and dword [ebx + 0x5c], 0
or dword [esi + 0x1038], 0xffffffff
mov dword [ebx + 0x58], 5
mov byte [ebx + 0x9a], 2
and dword [eax + 4], 0
mov dword [eax], 4
lea eax, [esi + 0x150]
push eax
call fcn.0046b5b2
pop eax
jmp 0x494b1c
mov eax, dword [ebx + 0x58]
mov ecx, dword [ebx + 0x5c]
add eax, 0xfffffffe
adc ecx, 0xffffffff
xor edx, edx
push 3
pop edi
cmp edi, eax
mov edi, dword [esi + 0x98]
sbb edx, ecx
mov dword [esi + 0x298], edi
jb 0x494ab3
test eax, eax
jne 0x494ab3
mov edx, dword [ebx + 0xe4]
cmp edx, 0x18
jb 0x494ab3
mov eax, dword [esi + 0xd8]
mov dword [esi + 0x1038], 0x1a
mov ecx, dword [eax]
push 0x589bdc
push 0x18
call fcn.00463bf5
pop ecx
pop edi
mov ecx, eax
push 0x18
push 0x589477
call fcn.004576ae
pop ecx
pop edx
mov edi, dword [esi + 0x98]
test al, al
je 0x494ab3
push 5
pop edx
xor ecx, ecx
call fcn.0044fef6
mov dword [esi + 0x98], eax
lea eax, [esi + 0x298]
mov byte [esi + 0x2f], 0
mov dword [esi + 0x1038], 0x19
push eax
call fcn.0046b5b2
pop eax
mov edi, dword [esi + 0x98]
mov eax, dword [esi + 0xdc]
and dword [eax + 4], 0
mov dword [eax], 3
mov dword [eax + 8], edi
jmp 0x494b1c
mov cl, 2
jmp 0x494ad2
mov cl, 1
xor edx, edx
xor edi, edi
mov byte [ebx + 0x48], cl
mov byte [ebx + 0x49], 0
mov dword [ebx + 0x50], edx
mov dword [ebx + 0x54], edi
and dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 2
mov bl, byte [esi + 4]
lea eax, [esi + 0x8d8]
add bl, bl
push 0x48
push eax
mov edi, dword [esi + 0xdc]
push edi
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0xac]
mov dword [edi + 0x4c], eax
mov dword [edi + 0x48], ecx
mov byte [edi + 0x50], bl
mov eax, dword [esi + 0x1030]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov byte [esi + 3], 0
mov ecx, edi
push 0x574040
call fcn.00535ff0
pop eax
jmp 0x494c60
mov byte [esi + 3], 1
push 0x574030
call fcn.00535ff0
pop eax
jmp 0x494c60
mov byte [esi + 3], 0
mov ecx, edi
push 0x573efc
call fcn.00535ff0
pop eax
jmp 0x494c60
mov al, 1
mov dword [esi + 0x1038], 6
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
push 0x10
pop edx
mov ecx, str.reserve_overflow
push 0x574080
call fcn.005363f0
pop eax
jmp 0x494c60
mov al, 1
mov dword [esi + 0x1038], 6
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
push 0x1d
pop edx
mov ecx, str.header_map_reserve_overflowed
push 0x5740e4
call fcn.00536efc
pop eax
jmp 0x494c60
mov al, 1
mov dword [esi + 0x1038], 6
mov byte [esi], al
mov byte [esi + 1], al
mov byte [esi + 2], al
push 0x24
pop edx
mov ecx, str.header_map_reserve_over_max_capacity
push 0x5740b4
call fcn.00536efc
pop eax
jmp 0x494c60
mov byte [esi + 3], 1
push 4
pop ecx
mov edx, 0x120
call fcn.00535cf0
jmp 0x494c60
mov dword [esi + 0x258], eax
lea eax, [esi + 0x50]
lea ecx, [esi + 0x258]
mov dword [esi + 0x9e8], eax
mov eax, 0x46682c
mov dword [esi + 0x9ec], eax
mov dword [esi + 0x9f0], ecx
lea ecx, [esi + 0x298]
mov dword [esi + 0x9f4], eax
mov dword [ecx], str.cannot_advance_past__remaining_:___
push 2
pop eax
mov dword [ecx + 4], eax
and dword [ecx + 0x10], 0
lea edx, [esi + 0x9e8]
mov byte [esi + 0x2f], 1
mov dword [ecx + 8], edx
mov edx, 0x593624
mov dword [ecx + 0xc], eax
call fcn.00535f60
ud2