Function at 0x4d8610
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
mov eax, dword [0x52798c]
mov dword [esp + 0x1c], edx
mov edx, dword [ecx]
shl edx, 4
mov dword [esp + 0x34], eax
add edx, ecx
mov eax, dword [0x527990]
push ebx
mov ebx, dword [0x527988]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x20]
push esi
mov esi, dword [ecx + 8]
add eax, 0xfffffffb
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edx
mov dword [esp + 0x38], ebx
push edi
lea edi, [edx + 0xc]
mov dword [esp + 0x1c], edi
cmp eax, 0x140
ja case.0x4d8672.10
movzx eax, byte [eax + 0x4db630]
jmp dword [eax*4 + 0x4db3a8]
mov byte [esi + 0x1d0], 0
mov dword [esi + 0x1b0], 0
jmp case.0x4d8672.10
mov byte [esi + 0x1d0], 1
mov dword [esi + 0x1b0], 0
jmp case.0x4d8672.10
mov byte [esi + 0x1d0], 2
mov dword [esi + 0x1b0], 0
jmp case.0x4d8672.10
mov ecx, esi
call fcn.004b59d0
jmp case.0x4d8672.10
mov eax, dword [esi + 0xc]
mov edx, dword [edx]
mov ecx, dword [esi]
mov dword [esp + 0x14], edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4d86f2
call fcn.004a1540
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x18], eax
mov dword [esi + 0xc], eax
mov esi, dword [esp + 0x18]
test esi, esi
je case.0x4d8672.10
cmp edx, 7
je 0x4d87a3
cmp dword [ecx + 4], 0
mov dword [esp + 0x18], 0
jle 0x4d87a3
mov edi, dword [esp + 0x14]
lea ecx, [ecx]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x14], eax
cmp dword [esi + 0x10], eax
jg 0x4d873b
mov ecx, esi
call fcn.004a1610
test eax, eax
jne 0x4d8778
mov eax, dword [esp + 0x14]
inc dword [esi + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x14]
mov word [eax + ecx*4], 0x22
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 0xc], 0
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x18]
mov dword [ecx + 0x10], 0
mov dword [ecx + 4], eax
xor eax, eax
cmp edi, 9
sete al
inc eax
mov dword [ecx + 8], eax
mov byte [esi + 0x6e], 0
mov eax, dword [esp + 0x18]
mov edx, 1
mov ecx, eax
shl edx, cl
mov ecx, dword [esi + 0x78]
test edx, ecx
jne 0x4d8791
or ecx, edx
mov dword [esi + 0x78], ecx
mov ecx, dword [esp + 0x24]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [ecx + 4]
jl 0x4d8720
mov edi, dword [esp + 0x1c]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], eax
cmp dword [esi + 0x10], eax
jg 0x4d87c2
mov ecx, esi
call fcn.004a1610
test eax, eax
jne case.0x4d8672.10
mov eax, dword [esp + 0x24]
inc dword [esi + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x14]
mov word [eax + ecx*4], 0x21
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov byte [esi + 0x6e], 0
jmp case.0x4d8672.10
movzx ebx, byte [edi + 2]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov edx, dword [esi + 0xc]
mov dword [esp + 0x24], edx
test edx, edx
jne 0x4d882f
mov ecx, dword [esi]
call fcn.004a1540
mov edx, eax
mov dword [esp + 0x24], edx
mov dword [esi + 0xc], edx
test edx, edx
je case.0x4d8672.10
mov esi, dword [edx + 0xc]
cmp dword [edx + 0x10], esi
jg 0x4d884a
mov ecx, edx
call fcn.004a1610
test eax, eax
jne case.0x4d8672.10
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x14]
lea ecx, [esi + esi*4]
inc dword [edx + 0xc]
mov word [eax + ecx*4], 0x21
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov byte [edx + 0x6e], 0
jmp case.0x4d8672.10
mov edx, dword [esi + 0xc]
mov dword [esp + 0x24], edx
test edx, edx
jne 0x4d88aa
mov ecx, dword [esi]
call fcn.004a1540
mov edx, eax
mov dword [esp + 0x24], edx
mov dword [esi + 0xc], edx
test edx, edx
je case.0x4d8672.10
mov esi, dword [edx + 0xc]
cmp dword [edx + 0x10], esi
jg 0x4d88c5
mov ecx, edx
call fcn.004a1610
test eax, eax
jne case.0x4d8672.10
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x14]
lea ecx, [esi + esi*4]
inc dword [edx + 0xc]
mov word [eax + ecx*4], 0x21
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov byte [edx + 0x6e], 0
jmp case.0x4d8672.10
lea eax, [edi + 4]
xor edx, edx
push eax
mov ecx, esi
call fcn.004ba880
add esp, 4
jmp case.0x4d8672.10
lea eax, [edi + 4]
mov edx, 1
push eax
mov ecx, esi
call fcn.004ba880
add esp, 4
jmp case.0x4d8672.10
lea eax, [edi + 4]
mov edx, 2
push eax
mov ecx, esi
call fcn.004ba880
add esp, 4
jmp case.0x4d8672.10
push dword [edi - 0x1c]
lea eax, [edi + 4]
mov ecx, esi
push 0
sub esp, 8
push eax
call fcn.004b6a20
add esp, 0x14
jmp case.0x4d8672.10
mov eax, dword [esi]
mov byte [eax + 0xe2], 0
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
lea eax, [edi + 4]
mov ecx, esi
push 0
push eax
call fcn.004b7ed0
add esp, 8
jmp case.0x4d8672.10
push dword [edi + 4]
xor edx, edx
mov ecx, esi
push 0
call fcn.004b7ed0
mov eax, dword [edi + 4]
add esp, 8
mov esi, dword [esi]
mov dword [esp + 0x24], eax
test eax, eax
je case.0x4d8672.10
mov edx, eax
mov ecx, esi
call fcn.004c6510
mov ecx, dword [esp + 0x24]
test esi, esi
je 0x4d89ef
cmp ecx, dword [esi + 0xf0]
jb 0x4d89ef
cmp ecx, dword [esi + 0xf4]
jae 0x4d89ef
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
jmp case.0x4d8672.10
push ecx
call fcn.00491400
add esp, 4
jmp case.0x4d8672.10
mov eax, dword [esi + 0x1e0]
mov ebx, dword [edi - 0x1c]
add eax, dword [esi + 0x1dc]
sub eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
lea edx, [edi + 4]
mov ecx, esi
call fcn.004b7190
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov eax, dword [esi + 0x1e8]
lea edx, [edi + 4]
test eax, eax
je case.0x4d8672.10
mov ecx, dword [eax + 0xc]
cmp ecx, 1
jl case.0x4d8672.10
mov eax, dword [eax + 0x10]
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*8]
mov ecx, dword [esi]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
test edx, edx
je 0x4d8b3a
mov eax, dword [edx + 4]
mov edx, dword [edx]
mov dword [esp + 0x24], eax
mov dword [esp + 0x14], edx
test edx, edx
jne 0x4d8a93
xor esi, esi
mov ecx, esi
call fcn.004937a0
mov eax, dword [esp + 0x1c]
jmp 0x4d8b3c
lea edx, [eax + 1]
test ecx, ecx
je 0x4d8af5
cmp byte [ecx + 0x1e], 0
je 0x4d8ab2
xor esi, esi
mov ecx, esi
call fcn.004937a0
mov eax, dword [esp + 0x1c]
jmp 0x4d8b3c
cmp byte [ecx + 0xe2], 0
je 0x4d8af5
movzx eax, word [ecx + 0xe0]
cmp edx, eax
jg 0x4d8af5
mov esi, dword [ecx + 0xec]
test esi, esi
je 0x4d8af5
mov eax, dword [esi]
mov dword [ecx + 0xec], eax
mov eax, dword [ecx + 0xe4]
inc eax
mov dword [ecx + 0xe4], eax
cmp eax, dword [ecx + 0xe8]
jle 0x4d8b14
mov dword [ecx + 0xe8], eax
jmp 0x4d8b14
push edx
call fcn.00491390
mov esi, eax
add esp, 4
test esi, esi
jne 0x4d8b14
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4d8b10
mov byte [eax + 0x1e], 1
test esi, esi
je 0x4d8b2d
push dword [esp + 0x24]
push dword [esp + 0x18]
push esi
call fcn.004e1370
mov eax, dword [esp + 0x30]
add esp, 0xc
mov byte [esi + eax], 0
mov ecx, esi
call fcn.004937a0
mov eax, dword [esp + 0x1c]
jmp 0x4d8b3c
xor esi, esi
mov ecx, esi
mov dword [eax - 0xc], esi
call fcn.004b73d0
mov ecx, dword [esp + 0x1c]
mov byte [ecx - 2], al
jmp case.0x4d8672.10
mov eax, dword [edi + 8]
mov ebx, dword [edi - 0x2c]
add eax, dword [edi + 4]
sub eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov eax, dword [edi + 8]
mov ebx, dword [edi - 0x4c]
add eax, dword [edi + 4]
sub eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov eax, dword [edi + 8]
mov ebx, dword [edx]
add eax, dword [edi + 4]
sub eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
lea edx, [edi + 4]
mov ecx, esi
call fcn.004b7490
jmp case.0x4d8672.10
mov eax, dword [edi + 4]
mov edx, 0x9c
mov ecx, dword [esi]
push 1
push 0
mov dword [esp + 0x24], eax
call fcn.004ad6e0
mov ecx, dword [esi]
mov edx, eax
add esp, 8
mov dword [esp + 0x18], edx
mov dword [esp + 0x24], ecx
test edx, edx
jne 0x4d8c25
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4d8c50
mov edx, eax
call fcn.004ade90
mov ecx, dword [esp + 0x1c]
cmp word [ecx + 2], 0
jl 0x4d8c4c
mov edx, dword [esp + 0x24]
test edx, edx
je 0x4d8c1a
cmp ecx, dword [edx + 0xf0]
jb 0x4d8c1a
cmp ecx, dword [edx + 0xf4]
jae 0x4d8c1a
mov eax, dword [edx + 0xec]
mov dword [ecx], eax
dec dword [edx + 0xe4]
mov dword [edx + 0xec], ecx
jmp 0x4d8c4c
push ecx
call fcn.00491400
add esp, 4
jmp 0x4d8c4c
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4d8c45
mov eax, 0x100
mov dword [edx + 8], ecx
test word [ecx + 2], ax
je 0x4d8c45
or word [edx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [edx + 0x14], eax
mov ecx, edx
call fcn.004ad650
mov edx, dword [esp + 0x18]
mov eax, dword [edi - 0xc]
mov ecx, esi
mov dword [esp + 0x2c], edx
lea edx, [esp + 0x2c]
mov dword [esp + 0x30], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x34], eax
call fcn.004b7490
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x5e
call fcn.004ad6e0
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d8c9a
mov ecx, eax
call fcn.004ad650
mov eax, dword [esp + 0x24]
mov ecx, dword [edi + 4]
lea edx, [esp + 0x2c]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 8]
add eax, ecx
mov dword [esp + 0x30], ecx
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.004b7490
jmp case.0x4d8672.10
mov ecx, dword [esi + 0x1e8]
test ecx, ecx
je case.0x4d8672.10
mov eax, dword [ecx + 0xc]
cmp eax, 1
jl case.0x4d8672.10
mov ecx, dword [ecx + 0x10]
lea edx, [eax + eax*2]
mov al, byte [edi + 4]
mov byte [ecx + edx*8 - 4], al
jmp case.0x4d8672.10
push dword [edi - 0x1c]
mov ecx, esi
push dword [edi + 4]
push dword [edx]
xor edx, edx
call fcn.004b76b0
add esp, 0xc
jmp case.0x4d8672.10
push 0
push 0
push 0
push 0
push dword [edi + 4]
push 0
push 0
push 0
xor edx, edx
mov ecx, esi
call fcn.004b8d30
add esp, 0x20
jmp case.0x4d8672.10
mov eax, dword [edx]
mov ecx, dword [esi]
mov esi, eax
mov dword [esp + 0x1c], ecx
test esi, esi
je case.0x4d8672.10
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], 0
jl case.0x4d8672.10
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4d8d7a
cmp esi, dword [ecx + 0xf0]
jb 0x4d8d7a
cmp esi, dword [ecx + 0xf4]
jae 0x4d8d7a
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
mov dword [ecx + 0xec], esi
dec dword [ecx + 0xe4]
jmp case.0x4d8672.10
push esi
call fcn.00491400
add esp, 4
jmp case.0x4d8672.10
mov esi, dword [edx]
xor edx, edx
mov ecx, dword [esp + 0x18]
mov edi, dword [ecx]
mov ecx, edi
call fcn.004aedc0
mov edx, esi
mov ecx, edi
call fcn.004aedc0
mov edi, dword [esp + 0x1c]
jmp case.0x4d8672.10
lea edx, [edi + 4]
mov ecx, esi
call fcn.004b78e0
jmp case.0x4d8672.10
mov ebx, dword [edi + 8]
not ebx
and ebx, dword [edx]
or ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], 0xff
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
shl ebx, 8
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], 0xff00
jmp case.0x4d8672.10
mov ebx, 7
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 8
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 9
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 6
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov dword [esp + 0x40], 0
xor ebx, ebx
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edx]
mov eax, dword [edx + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov edx, dword [edi - 0x2c]
mov ecx, esi
push 0
push dword [edi - 0x1c]
push dword [edi + 4]
call fcn.004b76b0
add esp, 0xc
jmp case.0x4d8672.10
push 0
push 0
push 0
push 0
push dword [edi + 4]
push dword [edi - 0x1c]
jmp 0x4d8d10
mov eax, dword [edi - 0x1c]
jmp 0x4d8d27
mov edx, dword [esp + 0x1c]
mov esi, dword [edi - 0x1c]
mov edx, dword [edx - 0x5c]
jmp 0x4d8d8c
mov ebx, 0x63
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov byte [esp + 0x3c], 0x63
mov ebx, dword [esp + 0x3c]
jmp case.0x4d8672.10
mov al, byte [edi + 4]
mov byte [esp + 0x3c], al
mov ebx, dword [esp + 0x3c]
jmp case.0x4d8672.10
mov ebx, 4
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 5
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edx]
mov edx, dword [edi + 4]
mov ecx, esi
push 0
call fcn.004b84b0
add esp, 8
jmp case.0x4d8672.10
push dword [edx]
mov edx, dword [edi + 4]
mov ecx, esi
push 1
call fcn.004b84b0
add esp, 8
jmp case.0x4d8672.10
mov edx, dword [edi + 4]
lea eax, [esp + 0x2c]
push eax
mov ecx, esi
mov word [esp + 0x30], 5
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
call fcn.004ce550
mov eax, dword [edi + 4]
add esp, 4
mov esi, dword [esi]
mov dword [esp + 0x24], eax
test eax, eax
je case.0x4d8672.10
mov edx, eax
mov ecx, esi
call fcn.004c6510
mov ecx, dword [esp + 0x24]
test esi, esi
je 0x4d89ef
cmp ecx, dword [esi + 0xf0]
jb 0x4d89ef
cmp ecx, dword [esi + 0xf4]
jae 0x4d89ef
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
jmp case.0x4d8672.10
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x4d8fb6
mov al, byte [edx]
mov byte [ecx + 4], al
mov ecx, dword [edi + 4]
mov eax, dword [edi - 0x1c]
mov dword [ecx + 0x1c], eax
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edi - 0x1c]
mov esi, dword [esi]
test ebx, ebx
je case.0x4d8672.83
mov edx, ebx
mov ecx, esi
call fcn.004c6510
test esi, esi
je 0x4d8ffc
cmp ebx, dword [esi + 0xf0]
jb 0x4d8ffc
cmp ebx, dword [esi + 0xf4]
jae 0x4d8ffc
mov eax, dword [esi + 0xec]
mov dword [ebx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ebx
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push ebx
call fcn.00491400
add esp, 4
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 0x70
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edi + 8]
mov ecx, esi
push dword [edi + 4]
push dword [edi - 0x6c]
push dword [edx]
mov edx, dword [edi - 0x5c]
push dword [edi - 0x1c]
push dword [edi - 0x2c]
push dword [edi - 0x3c]
push dword [edi - 0x4c]
call fcn.004c6580
mov ebx, eax
add esp, 0x20
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edx]
mov edx, dword [edi - 0x1c]
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov ebx, eax
cmp dword [edi + 8], 0
mov dword [esp + 0x3c], ebx
jbe 0x4d907b
lea eax, [edi + 4]
mov edx, ebx
push 1
push eax
mov ecx, esi
call fcn.004aece0
add esp, 8
mov esi, dword [esi]
test ebx, ebx
je case.0x4d8672.10
mov eax, dword [ebx]
lea ecx, [eax + eax*4]
mov eax, dword [ebx + 0xc]
lea eax, [eax + ecx*4]
mov ecx, dword [eax - 0xc]
mov dword [esp + 0x14], eax
test esi, esi
je 0x4d90c5
test ecx, ecx
je 0x4d90c5
cmp ecx, dword [esi + 0xf0]
jb 0x4d90c5
cmp ecx, dword [esi + 0xf4]
jae 0x4d90c5
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
jmp 0x4d90ce
push ecx
call fcn.00491400
add esp, 4
mov ecx, dword [edi - 8]
mov eax, dword [edi - 4]
sub eax, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
test ecx, ecx
jne 0x4d90ee
mov eax, dword [esp + 0x14]
mov dword [eax - 0xc], ecx
jmp case.0x4d8672.10
lea edx, [eax + 1]
test esi, esi
je 0x4d9150
cmp byte [esi + 0x1e], 0
je 0x4d9109
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov dword [eax - 0xc], ecx
jmp case.0x4d8672.10
cmp byte [esi + 0xe2], 0
je 0x4d9150
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d9150
mov ecx, dword [esi + 0xec]
mov dword [esp + 0x24], ecx
test ecx, ecx
je 0x4d9150
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d916f
mov dword [esi + 0xe8], eax
jmp 0x4d916f
push edx
call fcn.00491390
mov ecx, eax
mov dword [esp + 0x28], eax
add esp, 4
test ecx, ecx
jne 0x4d916f
test esi, esi
je 0x4d916b
mov byte [esi + 0x1e], 1
test ecx, ecx
je 0x4d9189
mov esi, dword [esp + 0x1c]
push esi
push dword [esp + 0x1c]
push ecx
call fcn.004e1370
mov ecx, dword [esp + 0x30]
add esp, 0xc
mov byte [esi + ecx], 0
mov eax, dword [esp + 0x14]
mov dword [eax - 0xc], ecx
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [esp + 0x2c]
push 0
push eax
mov edx, 0x70
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
call fcn.004ad6e0
push eax
mov eax, dword [esp + 0x20]
mov ecx, esi
mov edx, dword [eax]
call fcn.004aeb40
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x70
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d91f6
mov ecx, ebx
call fcn.004ad650
lea ecx, [edi - 0x1c]
mov edx, 0x1a
push 1
push ecx
mov ecx, dword [esi]
call fcn.004ad6e0
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d921e
mov ecx, eax
call fcn.004ad650
mov eax, dword [esp + 0x24]
push 0
push ebx
push eax
mov edx, 0x75
mov ecx, esi
call fcn.004ad900
mov edx, dword [edi - 0x2c]
add esp, 0xc
mov ecx, esi
push eax
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov esi, dword [esi]
test esi, esi
je 0x4d92a7
cmp byte [esi + 0x1e], 0
je 0x4d9261
xor ebx, ebx
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
cmp byte [esi + 0xe2], 0
je 0x4d92a7
mov eax, 0x40
cmp ax, word [esi + 0xe0]
ja 0x4d92a7
mov ebx, dword [esi + 0xec]
test ebx, ebx
je 0x4d92a7
mov eax, dword [ebx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d92c3
mov dword [esi + 0xe8], eax
jmp 0x4d92c3
push 0x40
call fcn.00491390
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4d92c3
test esi, esi
je 0x4d92bf
mov byte [esi + 0x1e], 1
test ebx, ebx
je 0x4d92d0
push 0x40
push 0
push ebx
call fcn.004e1ab0
add esp, 0xc
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
test ebx, ebx
je case.0x4d8672.10
lea eax, [ebx + 8]
test eax, eax
je case.0x4d8672.10
movsx ecx, word [ebx]
dec ecx
test ecx, ecx
jle 0x4d9317
lea edx, [ecx*8]
sub edx, ecx
shl edx, 3
mov al, byte [ebx + edx - 0x1b]
lea edx, [edx - 0x38]
dec ecx
mov byte [ebx + edx + 0x55], al
test ecx, ecx
jg 0x4d9307
mov byte [ebx + 0x1d], 0
jmp case.0x4d8672.10
mov ebx, dword [edx]
mov dword [esp + 0x3c], ebx
test ebx, ebx
je case.0x4d8672.10
movzx eax, word [ebx]
test ax, ax
jle case.0x4d8672.10
cwde
lea ecx, [eax*8]
sub ecx, eax
mov al, byte [edi + 4]
mov byte [ebx + ecx*8 - 0x1b], al
jmp case.0x4d8672.10
push dword [edi + 4]
lea eax, [edi - 0x2c]
mov ecx, esi
push dword [edx]
mov edx, dword [edi - 0x5c]
push 0
push eax
lea eax, [edi - 0x3c]
push eax
lea eax, [edi - 0x4c]
push eax
call fcn.004ba580
mov ebx, eax
mov ecx, esi
lea eax, [edi - 0x1c]
mov dword [esp + 0x54], ebx
push eax
mov edx, ebx
call fcn.004ba780
add esp, 0x1c
jmp case.0x4d8672.10
push dword [edi + 4]
lea eax, [edi - 0x1c]
mov ecx, esi
push dword [edx]
mov edx, dword [edi - 0x5c]
push dword [edi - 0x3c]
push eax
push 0
push 0
call fcn.004ba580
mov ebx, eax
add esp, 0x18
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
cmp dword [edi - 0x5c], 0
jne 0x4d93d3
cmp dword [edi - 0x18], 0
jne 0x4d93d3
cmp dword [edx], 0
jne 0x4d93d3
cmp dword [edi + 4], 0
jne 0x4d93d3
mov ebx, dword [edi - 0x3c]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ecx, dword [edi - 0x3c]
test ecx, ecx
je 0x4d940a
lea eax, [ecx + 8]
test eax, eax
je 0x4d940a
movsx edx, word [ecx]
dec edx
test edx, edx
jle 0x4d9406
lea eax, [edx*8]
sub eax, edx
lea ebx, [ecx + 0x1d]
lea ebx, [ebx + eax*8]
mov al, byte [ebx - 0x38]
lea ebx, [ebx - 0x38]
dec edx
mov byte [ebx + 0x38], al
test edx, edx
jg 0x4d93f8
mov byte [ecx + 0x1d], 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [edi - 0x3c]
xor edx, edx
mov ecx, esi
call fcn.004c6580
push dword [edi + 4]
mov edx, dword [edi - 0x5c]
mov ecx, esi
push dword [edi - 0xc]
push eax
lea eax, [edi - 0x1c]
push eax
push 0
push 0
call fcn.004ba580
mov ebx, eax
add esp, 0x38
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi + 4]
push eax
push edx
xor edx, edx
call fcn.004ba100
mov ebx, eax
add esp, 8
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push 0
push 0
mov ecx, esi
call fcn.004c6770
mov ebx, eax
add esp, 8
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push 0
push edx
lea edx, [edi - 0x1c]
mov ecx, esi
call fcn.004c6770
mov ebx, eax
add esp, 8
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push edx
lea eax, [edi - 0x1c]
mov ecx, esi
push eax
lea edx, [edi - 0x2c]
call fcn.004c6770
mov ebx, eax
add esp, 8
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
xor ebx, ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edx]
mov edx, dword [edi - 0x2c]
mov ecx, esi
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
test ebx, ebx
je case.0x4d8672.10
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xc]
lea edx, [eax + eax*4]
mov al, byte [edi + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d8672.10
push dword [edx]
xor edx, edx
mov ecx, esi
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
test ebx, ebx
je case.0x4d8672.10
mov ecx, dword [ebx + 0xc]
test ecx, ecx
je case.0x4d8672.10
mov al, byte [edi + 4]
mov byte [ecx + 0xc], al
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], 0
jmp case.0x4d8672.10
mov ebx, dword [edi - 0x1c]
mov eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov eax, dword [edi - 0x1c]
mov ebx, dword [edi + 4]
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push edx
mov edx, dword [edi - 0x1c]
mov ecx, esi
call fcn.004ba780
mov edx, dword [edi - 0x1c]
add esp, 4
mov ecx, esi
push dword [edi + 4]
call fcn.004bb850
add esp, 4
jmp case.0x4d8672.10
mov edx, dword [edi - 0x3c]
lea eax, [edi - 0x2c]
push eax
mov ecx, esi
call fcn.004ba780
mov eax, dword [esp + 0x18]
add esp, 4
mov eax, dword [eax]
test eax, eax
je 0x4d95c2
mov ecx, dword [esi]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x50]
jle 0x4d95c2
push str.set_list
push str.too_many_columns_in__s
push esi
call fcn.004936e0
add esp, 0xc
movzx eax, byte [edi - 0x4c]
mov ecx, esi
mov edx, dword [edi - 0x3c]
push eax
mov eax, dword [esp + 0x18]
push dword [edi + 4]
push dword [eax]
call fcn.004d0220
add esp, 0xc
jmp case.0x4d8672.10
push dword [edi + 4]
mov edx, dword [edi - 0x3c]
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov ebx, eax
lea eax, [edi - 0x1c]
mov dword [esp + 0x3c], ebx
mov edx, ebx
mov ecx, esi
push 1
push eax
call fcn.004aece0
add esp, 8
jmp case.0x4d8672.10
push dword [edi + 4]
xor edx, edx
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov ebx, eax
lea eax, [edi - 0x1c]
mov dword [esp + 0x3c], ebx
mov edx, ebx
mov ecx, esi
push 1
push eax
call fcn.004aece0
add esp, 8
jmp case.0x4d8672.10
movzx eax, byte [edi - 0x6c]
mov ecx, esi
push eax
push dword [edi - 0x3c]
push 0
push dword [edx]
mov edx, dword [edi - 0x4c]
call fcn.004bed80
add esp, 0x10
jmp case.0x4d8672.10
movzx eax, byte [edi - 0x3c]
mov ecx, esi
push eax
push dword [edx]
mov edx, dword [edi - 0x1c]
push dword [edi + 4]
push 0
call fcn.004bed80
add esp, 0x10
jmp case.0x4d8672.10
movzx eax, byte [edi - 0x4c]
mov ecx, esi
mov edx, dword [edi - 0x2c]
push eax
push dword [edi - 0x1c]
push 0
push 0
call fcn.004bed80
add esp, 0x10
jmp case.0x4d8672.10
mov byte [esp + 0x3c], 5
mov ebx, dword [esp + 0x3c]
jmp case.0x4d8672.10
push dword [edi + 4]
mov edx, dword [edi - 0x1c]
mov ecx, esi
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edi + 4]
xor edx, edx
mov ecx, esi
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edi - 0x1c]
mov esi, dword [esi]
test ebx, ebx
jne 0x4d976b
test esi, esi
je 0x4d9739
cmp byte [esi + 0x1e], bl
jne 0x4d979a
cmp byte [esi + 0xe2], bl
je 0x4d9739
mov eax, 0xc
cmp ax, word [esi + 0xe0]
ja 0x4d9739
mov ecx, dword [esi + 0xec]
test ecx, ecx
je 0x4d9739
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d9735
mov dword [esi + 0xe8], eax
mov ebx, ecx
jmp 0x4d9757
push 0xc
call fcn.00491390
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4d9751
test esi, esi
je 0x4d9751
mov byte [esi + 0x1e], 1
mov ecx, ebx
test ebx, ebx
je 0x4d979a
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov edx, dword [ebx]
lea eax, [esp + 0x24]
push eax
lea eax, [ebx + 8]
mov ecx, esi
push eax
lea eax, [ebx + 4]
push eax
push 5
push 8
call fcn.004b9e10
add esp, 0x14
mov dword [ebx], eax
cmp dword [esp + 0x24], 0
jge 0x4d97a5
mov edx, ebx
mov ecx, esi
call fcn.004b9ec0
xor ebx, ebx
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
lea eax, [edi + 4]
test eax, eax
je 0x4d98ab
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4d97e2
xor ecx, ecx
mov dword [esp + 0x18], ecx
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
lea edx, [ecx + 1]
test esi, esi
je 0x4d9857
cmp byte [esi + 0x1e], 0
je 0x4d9810
xor ecx, ecx
mov dword [esp + 0x18], ecx
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
cmp byte [esi + 0xe2], 0
je 0x4d9857
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d9857
mov ecx, dword [esi + 0xec]
mov dword [esp + 0x18], ecx
test ecx, ecx
je 0x4d9857
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d9876
mov dword [esi + 0xe8], eax
jmp 0x4d9876
push edx
call fcn.00491390
mov ecx, eax
add esp, 4
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4d9876
test esi, esi
je 0x4d9872
mov byte [esi + 0x1e], 1
test ecx, ecx
je 0x4d9890
mov esi, dword [esp + 0x1c]
push esi
push dword [esp + 0x18]
push ecx
call fcn.004e1370
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov byte [ecx + esi], 0
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
mov eax, dword [ebx]
xor ecx, ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
mov esi, dword [esi]
test esi, esi
je 0x4d9915
cmp byte [esi + 0x1e], 0
jne case.0x4d8672.28
cmp byte [esi + 0xe2], 0
je 0x4d9915
mov eax, 0xc
cmp ax, word [esi + 0xe0]
ja 0x4d9915
mov ebx, dword [esi + 0xec]
test ebx, ebx
je 0x4d9915
mov eax, dword [ebx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d9935
mov dword [esi + 0xe8], eax
jmp 0x4d9935
push 0xc
call fcn.00491390
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4d9935
test esi, esi
je 0x4d992d
mov byte [esi + 0x1e], 1
test ebx, ebx
je case.0x4d8672.28
mov dword [ebx], 0
lea ecx, [esp + 0x24]
push ecx
lea eax, [ebx + 8]
mov dword [ebx + 4], 0
push eax
mov dword [eax], 0
mov ecx, esi
mov edx, dword [ebx]
lea eax, [ebx + 4]
push eax
push 5
push 8
call fcn.004b9e10
add esp, 0x14
mov dword [ebx], eax
cmp dword [esp + 0x24], 0
jge 0x4d9982
mov edx, ebx
mov ecx, esi
call fcn.004b9ec0
xor ebx, ebx
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
lea eax, [edi + 4]
test eax, eax
je 0x4d9a88
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4d99bf
xor ecx, ecx
mov dword [esp + 0x18], ecx
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
lea edx, [ecx + 1]
test esi, esi
je 0x4d9a34
cmp byte [esi + 0x1e], 0
je 0x4d99ed
xor ecx, ecx
mov dword [esp + 0x18], ecx
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
cmp byte [esi + 0xe2], 0
je 0x4d9a34
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d9a34
mov ecx, dword [esi + 0xec]
mov dword [esp + 0x18], ecx
test ecx, ecx
je 0x4d9a34
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d9a53
mov dword [esi + 0xe8], eax
jmp 0x4d9a53
push edx
call fcn.00491390
mov ecx, eax
add esp, 4
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4d9a53
test esi, esi
je 0x4d9a4f
mov byte [esi + 0x1e], 1
test ecx, ecx
je 0x4d9a6d
mov esi, dword [esp + 0x1c]
push esi
push dword [esp + 0x18]
push ecx
call fcn.004e1370
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov byte [esi + ecx], 0
call fcn.004937a0
mov eax, dword [ebx]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
mov eax, dword [ebx]
xor ecx, ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x3c], ebx
mov dword [eax + edx*8], ecx
jmp case.0x4d8672.10
mov eax, dword [edi + 8]
mov ebx, dword [edi + 4]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ebx, dword [edx]
mov dword [esp + 0x3c], ebx
mov eax, dword [edi - 0x1c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
movzx edx, byte [edi + 2]
lea eax, [edi + 4]
mov ecx, dword [esi]
push 1
push eax
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9af3
mov ecx, ebx
call fcn.004ad650
mov dword [esp + 0x3c], ebx
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
add eax, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x1a
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9af3
mov ecx, ebx
call fcn.004ad650
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
add eax, ecx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi - 0x1c]
push 1
push eax
mov edx, 0x1a
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9b69
mov ecx, ebx
call fcn.004ad650
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x1a
call fcn.004ad6e0
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d9b91
mov ecx, eax
call fcn.004ad650
mov eax, dword [esp + 0x24]
push 0
push eax
push ebx
mov edx, 0x75
mov ecx, esi
call fcn.004ad900
mov ebx, eax
add esp, 0xc
mov eax, dword [edi - 0x1c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi - 0x3c]
push 1
push eax
mov edx, 0x1a
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9be2
mov ecx, ebx
call fcn.004ad650
lea ecx, [edi - 0x1c]
mov edx, 0x1a
push 1
push ecx
mov ecx, dword [esi]
call fcn.004ad6e0
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4d9c06
mov ecx, eax
call fcn.004ad650
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x1a
call fcn.004ad6e0
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d9c2e
mov ecx, eax
call fcn.004ad650
mov eax, dword [esp + 0x24]
push 0
push eax
push dword [esp + 0x24]
mov edx, 0x75
mov ecx, esi
call fcn.004ad900
add esp, 0xc
mov edx, 0x75
mov ecx, esi
push 0
push eax
push ebx
call fcn.004ad900
mov ebx, eax
add esp, 0xc
mov eax, dword [edi - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
cmp byte [esi + 0x13], 0
lea eax, [edi + 4]
jne 0x4d9c92
push eax
push str.near___T_:_syntax_error
push esi
call fcn.004936e0
add esp, 0xc
xor ebx, ebx
jmp 0x4d9af3
mov ecx, dword [esi]
mov edx, 0x84
push 1
push eax
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9af3
mov ecx, ebx
call fcn.004ad650
mov ecx, dword [edi + 4]
lea edx, [ebx + 0x18]
inc ecx
mov dword [esp + 0x3c], ebx
call fcn.00493ec0
jmp 0x4d9af7
mov ecx, dword [esi]
lea eax, [edi + 4]
push 1
push eax
mov edx, 0x85
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4d9cec
mov ecx, ebx
call fcn.004ad650
mov edx, ebx
mov dword [esp + 0x3c], ebx
mov ecx, esi
call fcn.004adc40
jmp 0x4d9af7
mov edx, dword [edi - 0x1c]
lea esi, [edi + 4]
mov ecx, dword [esp + 0x18]
push esi
call fcn.004ad100
mov ebx, eax
add esp, 4
mov eax, dword [edi - 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [esi]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov eax, dword [edi - 0x2c]
mov ecx, dword [esi]
push 1
push edx
mov edx, 0x25
mov dword [esp + 0x2c], eax
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x1c], ecx
test ebx, ebx
jne 0x4d9d9f
mov esi, dword [esp + 0x24]
test esi, esi
je 0x4d9dc6
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], bx
jl 0x4d9dc6
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4d9d94
cmp esi, dword [ecx + 0xf0]
jb 0x4d9d94
cmp esi, dword [ecx + 0xf4]
jae 0x4d9d94
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], esi
jmp 0x4d9dc6
push esi
call fcn.00491400
add esp, 4
jmp 0x4d9dc6
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4d9dbf
mov eax, 0x100
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4d9dbf
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov eax, dword [edi - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov eax, dword [edx]
test eax, eax
je 0x4d9e05
mov ecx, dword [esi]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x60]
jle 0x4d9e05
lea eax, [edi - 0x3c]
push eax
push str.too_many_arguments_on_function__T
push esi
call fcn.004936e0
mov edx, dword [esp + 0x20]
add esp, 0xc
mov edx, dword [edx]
lea esi, [edi - 0x3c]
mov ecx, dword [esp + 0x18]
push esi
call fcn.004adbd0
mov ebx, eax
add esp, 4
mov eax, dword [esi]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
cmp dword [edi - 0x1c], 0
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
je case.0x4d8672.10
test ebx, ebx
je case.0x4d8672.10
or word [ebx + 2], 0x10
jmp case.0x4d8672.10
mov ecx, dword [esp + 0x18]
lea esi, [edi - 0x2c]
push esi
xor edx, edx
call fcn.004adbd0
mov ebx, eax
add esp, 4
mov eax, dword [esi]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
lea eax, [edi + 4]
xor edx, edx
push eax
mov ecx, esi
call fcn.004adbd0
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
test ebx, ebx
je 0x4d9af7
mov byte [ebx], 0x9b
jmp 0x4d9af7
mov eax, dword [edi + 4]
movzx edx, byte [edi - 0xe]
mov ecx, dword [esi]
mov dword [esp + 0x1c], eax
mov eax, dword [edi - 0x1c]
push 1
push 0
mov dword [esp + 0x20], eax
call fcn.004ad6e0
mov esi, dword [esi]
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4d9f99
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4d9f16
mov edx, eax
mov ecx, esi
call fcn.004ade90
mov ecx, dword [esp + 0x18]
cmp word [ecx + 2], bx
jl 0x4d9f16
test esi, esi
je 0x4d9f0d
cmp ecx, dword [esi + 0xf0]
jb 0x4d9f0d
cmp ecx, dword [esi + 0xf4]
jae 0x4d9f0d
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
jmp 0x4d9f16
push ecx
call fcn.00491400
add esp, 4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4d9fe0
mov edx, eax
mov ecx, esi
call fcn.004ade90
mov ecx, dword [esp + 0x1c]
cmp word [ecx + 2], 0
jl 0x4d9fe0
test esi, esi
je 0x4d9f79
cmp ecx, dword [esi + 0xf0]
jb 0x4d9f79
cmp ecx, dword [esi + 0xf4]
jae 0x4d9f79
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
mov eax, dword [edi - 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
push ecx
call fcn.00491400
mov eax, dword [edi - 0x18]
add esp, 4
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esp + 0x1c]
mov eax, 0x100
test ecx, ecx
je 0x4d9fbe
mov dword [ebx + 0xc], ecx
test word [ecx + 2], ax
je 0x4d9fbe
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov eax, 0x100
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4d9fd9
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4d9fd9
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov eax, dword [edi - 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 1
jmp case.0x4d8672.10
xor ebx, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
jmp case.0x4d8672.10
push dword [edx]
xor edx, edx
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov edx, eax
mov ecx, esi
push dword [edi - 0x2c]
call fcn.004aeb40
mov edx, eax
add esp, 4
mov eax, dword [edi + 4]
test eax, eax
je 0x4da073
push eax
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov edx, eax
lea eax, [edi - 0x1c]
mov ecx, esi
push eax
call fcn.004adbd0
add esp, 4
mov ebx, eax
cmp dword [edi - 0x14], 0
mov dword [esp + 0x3c], ebx
je 0x4da124
mov ecx, dword [esi]
mov edx, 0x13
push 1
push 0
call fcn.004ad6e0
mov esi, dword [esi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x1c], ecx
test ecx, ecx
jne 0x4da0f9
test ebx, ebx
je 0x4da11e
mov edx, ebx
mov ecx, esi
call fcn.004ade90
cmp word [ebx + 2], 0
jl 0x4da11a
test esi, esi
je 0x4da0ee
cmp ebx, dword [esi + 0xf0]
jb 0x4da0ee
cmp ebx, dword [esi + 0xf4]
jae 0x4da0ee
mov eax, dword [esi + 0xec]
mov dword [ebx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ebx
jmp 0x4da11a
push ebx
call fcn.00491400
add esp, 4
jmp 0x4da11a
test ebx, ebx
je 0x4da115
mov eax, 0x100
mov dword [ecx + 8], ebx
test word [ebx + 2], ax
je 0x4da115
or word [ecx + 2], ax
mov eax, dword [ebx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004ad650
mov ecx, dword [esp + 0x1c]
mov ebx, ecx
mov dword [esp + 0x3c], ebx
mov eax, dword [edi - 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [edi - 4]
mov dword [esp + 0x44], eax
test ebx, ebx
je case.0x4d8672.10
mov eax, 0x80
or word [ebx + 2], ax
jmp case.0x4d8672.10
lea eax, [edi + 4]
push eax
movzx eax, byte [edi + 2]
push edx
push eax
mov edx, esi
lea ecx, [esp + 0x48]
call fcn.004d8200
mov ebx, dword [esp + 0x48]
add esp, 0xc
jmp case.0x4d8672.10
lea eax, [edi + 4]
push eax
lea eax, [edi - 0x1c]
push eax
push 0x4a
jmp 0x4da152
mov eax, dword [edi + 4]
mov edx, 0x46
mov ecx, dword [esi]
mov dword [esp + 0x18], eax
mov eax, dword [edi - 0x1c]
push 1
push 0
mov dword [esp + 0x1c], eax
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x1c], ecx
test ebx, ebx
jne 0x4da255
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4da1fa
mov edx, eax
call fcn.004ade90
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
cmp word [edx + 2], bx
jl 0x4da1fa
test ecx, ecx
je 0x4da1ed
cmp edx, dword [ecx + 0xf0]
jb 0x4da1ed
cmp edx, dword [ecx + 0xf4]
jae 0x4da1ed
mov eax, dword [ecx + 0xec]
mov dword [edx], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], edx
jmp 0x4da1fa
push edx
call fcn.00491400
mov ecx, dword [esp + 0x20]
add esp, 4
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4da29c
mov edx, eax
call fcn.004ade90
mov edx, dword [esp + 0x18]
cmp word [edx + 2], 0
jl 0x4da29c
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4da24a
cmp edx, dword [ecx + 0xf0]
jb 0x4da24a
cmp edx, dword [ecx + 0xf4]
jae 0x4da24a
mov eax, dword [ecx + 0xec]
mov dword [edx], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], edx
jmp 0x4da29c
push edx
call fcn.00491400
add esp, 4
jmp 0x4da29c
mov ecx, dword [esp + 0x18]
mov eax, 0x100
test ecx, ecx
je 0x4da27a
mov dword [ebx + 0xc], ecx
test word [ecx + 2], ax
je 0x4da27a
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov eax, 0x100
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x4da295
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4da295
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov eax, dword [edi - 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x44], eax
mov eax, dword [esi]
mov dword [esp + 0x3c], ebx
cmp byte [eax + 0x1e], 0
jne case.0x4d8672.10
mov eax, dword [edi + 4]
cmp byte [eax], 0x62
jne case.0x4d8672.10
mov byte [ebx], 0x49
jmp case.0x4d8672.10
mov eax, dword [edi + 4]
mov edx, 0x92
mov ecx, dword [esi]
mov dword [esp + 0x18], eax
mov eax, dword [edi - 0x2c]
push 1
push 0
mov dword [esp + 0x1c], eax
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x1c], ecx
test ebx, ebx
jne 0x4da3ae
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4da353
mov edx, eax
call fcn.004ade90
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
cmp word [edx + 2], bx
jl 0x4da353
test ecx, ecx
je 0x4da346
cmp edx, dword [ecx + 0xf0]
jb 0x4da346
cmp edx, dword [ecx + 0xf4]
jae 0x4da346
mov eax, dword [ecx + 0xec]
mov dword [edx], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], edx
jmp 0x4da353
push edx
call fcn.00491400
mov ecx, dword [esp + 0x20]
add esp, 4
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4da3f5
mov edx, eax
call fcn.004ade90
mov edx, dword [esp + 0x18]
cmp word [edx + 2], 0
jl 0x4da3f5
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4da3a3
cmp edx, dword [ecx + 0xf0]
jb 0x4da3a3
cmp edx, dword [ecx + 0xf4]
jae 0x4da3a3
mov eax, dword [ecx + 0xec]
mov dword [edx], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], edx
jmp 0x4da3f5
push edx
call fcn.00491400
add esp, 4
jmp 0x4da3f5
mov ecx, dword [esp + 0x18]
mov eax, 0x100
test ecx, ecx
je 0x4da3d3
mov dword [ebx + 0xc], ecx
test word [ecx + 2], ax
je 0x4da3d3
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov eax, 0x100
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x4da3ee
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4da3ee
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov eax, dword [edi - 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x44], eax
mov eax, dword [esi]
mov dword [esp + 0x3c], ebx
cmp byte [eax + 0x1e], 0
jne case.0x4d8672.10
mov eax, dword [edi + 4]
cmp byte [eax], 0x62
jne case.0x4d8672.10
mov byte [ebx], 0x4a
jmp case.0x4d8672.10
push edx
lea eax, [edi + 4]
mov edx, esi
push eax
movzx eax, byte [edi - 0xe]
lea ecx, [esp + 0x44]
push eax
call fcn.004d82c0
mov ebx, dword [esp + 0x48]
add esp, 0xc
jmp case.0x4d8672.10
push edx
lea eax, [edi + 4]
mov edx, esi
push eax
push 0x9c
lea ecx, [esp + 0x48]
call fcn.004d82c0
mov ebx, dword [esp + 0x48]
add esp, 0xc
jmp case.0x4d8672.10
push edx
lea eax, [edi + 4]
mov edx, esi
push eax
push 0x9d
lea ecx, [esp + 0x48]
call fcn.004d82c0
mov ebx, dword [esp + 0x48]
add esp, 0xc
jmp case.0x4d8672.10
push dword [edi - 0x1c]
xor edx, edx
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov edx, eax
mov ecx, esi
push dword [edi + 4]
call fcn.004aeb40
mov ecx, dword [edi - 0x3c]
add esp, 4
mov dword [esp + 0x1c], ecx
mov edx, 0x47
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
push 1
push 0
call fcn.004ad6e0
mov ecx, eax
add esp, 8
mov eax, dword [esi]
mov ebx, ecx
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4da551
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4da540
mov ecx, dword [esp + 0x24]
mov edx, eax
call fcn.004ade90
mov ecx, dword [esp + 0x1c]
cmp word [ecx + 2], bx
jl 0x4da540
mov edx, dword [esp + 0x24]
test edx, edx
je 0x4da537
cmp ecx, dword [edx + 0xf0]
jb 0x4da537
cmp ecx, dword [edx + 0xf4]
jae 0x4da537
mov eax, dword [edx + 0xec]
mov dword [ecx], eax
dec dword [edx + 0xe4]
mov dword [edx + 0xec], ecx
mov edx, dword [esp + 0x14]
mov ecx, dword [esi]
mov dword [esp + 0x3c], ebx
call fcn.004aedc0
jmp 0x4da57e
push ecx
call fcn.00491400
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, dword [esi]
mov dword [esp + 0x3c], ebx
call fcn.004aedc0
jmp 0x4da57e
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x4da56c
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4da56c
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004ad650
mov ecx, dword [esp + 0x14]
mov eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [eax + 0x10], ecx
cmp dword [edi - 0x2c], 0
je 0x4da656
mov ecx, dword [esi]
mov edx, 0x13
push 1
push 0
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x24], ecx
test ebx, ebx
jne 0x4da62b
mov esi, dword [esp + 0x18]
test esi, esi
je 0x4da652
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], bx
jl 0x4da652
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4da60b
cmp esi, dword [ecx + 0xf0]
jb 0x4da60b
cmp esi, dword [ecx + 0xf4]
jae 0x4da60b
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], esi
mov eax, dword [edi - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
push esi
call fcn.00491400
mov eax, dword [edi - 0x38]
add esp, 4
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4da64b
mov eax, 0x100
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4da64b
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov dword [esp + 0x3c], ebx
mov eax, dword [edi - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov eax, dword [edi - 0x3c]
mov edx, 0x48
mov ecx, dword [esi]
push 1
push 0
mov dword [esp + 0x24], eax
call fcn.004ad6e0
mov ecx, eax
add esp, 8
mov eax, dword [esi]
mov ebx, ecx
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4da706
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4da6ee
mov ecx, dword [esp + 0x24]
mov edx, eax
call fcn.004ade90
mov ecx, dword [esp + 0x1c]
cmp word [ecx + 2], bx
jl 0x4da6ee
mov edx, dword [esp + 0x24]
test edx, edx
je 0x4da6e5
cmp ecx, dword [edx + 0xf0]
jb 0x4da6e5
cmp ecx, dword [edx + 0xf4]
jae 0x4da6e5
mov eax, dword [edx + 0xec]
mov dword [ecx], eax
dec dword [edx + 0xe4]
mov dword [edx + 0xec], ecx
jmp 0x4da6ee
push ecx
call fcn.00491400
add esp, 4
mov edx, dword [edi - 0xc]
mov ecx, dword [esi]
mov dword [esp + 0x3c], ebx
call fcn.004aedc0
mov dword [esp + 0x18], 0
jmp 0x4da752
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x4da721
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4da721
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004ad650
mov eax, dword [edi - 0xc]
mov ecx, ebx
mov dword [esp + 0x3c], ebx
mov dword [ecx + 0x10], eax
call fcn.004ad650
mov eax, dword [esi]
mov ecx, dword [eax + 0x54]
mov eax, ebx
cmp dword [eax + 0x38], ecx
jle 0x4da752
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
add esp, 0xc
cmp dword [edi - 0x2c], 0
je 0x4da7f4
mov ecx, dword [esi]
mov edx, 0x13
push 1
push 0
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x24], ecx
test ebx, ebx
jne 0x4da7c9
mov esi, dword [esp + 0x18]
test esi, esi
je 0x4da7f0
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], bx
jl 0x4da7f0
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4da7be
cmp esi, dword [ecx + 0xf0]
jb 0x4da7be
cmp esi, dword [ecx + 0xf4]
jae 0x4da7be
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], esi
jmp 0x4da7f0
push esi
call fcn.00491400
add esp, 4
jmp 0x4da7f0
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4da7e9
mov eax, 0x100
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4da7e9
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov dword [esp + 0x3c], ebx
mov eax, dword [edi - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
mov edx, 0x73
push 1
push 0
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4da869
mov ecx, ebx
call fcn.004ad650
mov eax, dword [esp + 0x14]
mov ecx, ebx
mov dword [esp + 0x3c], ebx
mov eax, dword [eax]
mov dword [ebx + 0x10], eax
mov eax, 0x1000
or word [ebx + 2], ax
call fcn.004ad650
mov eax, dword [esi]
mov eax, dword [eax + 0x54]
cmp dword [ebx + 0x38], eax
jle 0x4d9abc
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
add esp, 0xc
jmp 0x4d9abc
mov eax, dword [esp + 0x14]
mov esi, dword [esi]
mov dword [esp + 0x3c], ebx
mov eax, dword [eax]
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d9abc
mov edx, eax
mov ecx, esi
call fcn.004c6510
mov ecx, dword [esp + 0x24]
test esi, esi
je 0x4da8bb
cmp ecx, dword [esi + 0xf0]
jb 0x4da8bb
cmp ecx, dword [esi + 0xf4]
jae 0x4da8bb
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
jmp 0x4d9abc
push ecx
call fcn.00491400
add esp, 4
jmp 0x4d9abc
mov eax, dword [edi - 0x3c]
mov edx, 0x48
mov ecx, dword [esi]
push 1
push 0
mov dword [esp + 0x20], eax
call fcn.004ad6e0
mov ecx, eax
add esp, 8
mov eax, dword [esi]
mov ebx, ecx
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x1c], ecx
test ecx, ecx
jne 0x4da9af
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4da952
mov ecx, dword [esp + 0x24]
mov edx, eax
call fcn.004ade90
mov ecx, dword [esp + 0x18]
cmp word [ecx + 2], bx
jl 0x4da952
mov edx, dword [esp + 0x24]
test edx, edx
je 0x4da949
cmp ecx, dword [edx + 0xf0]
jb 0x4da949
cmp ecx, dword [edx + 0xf4]
jae 0x4da949
mov eax, dword [edx + 0xec]
mov dword [ecx], eax
dec dword [edx + 0xe4]
mov dword [edx + 0xec], ecx
jmp 0x4da952
push ecx
call fcn.00491400
add esp, 4
mov eax, dword [edi - 0xc]
mov ecx, dword [esi]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], ecx
test eax, eax
je 0x4daa04
mov edx, eax
call fcn.004c6510
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
test ecx, ecx
je 0x4da9a4
cmp edx, dword [ecx + 0xf0]
jb 0x4da9a4
cmp edx, dword [ecx + 0xf4]
jae 0x4da9a4
mov eax, dword [ecx + 0xec]
mov dword [edx], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], edx
jmp 0x4daa04
push edx
call fcn.00491400
add esp, 4
jmp 0x4daa04
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4da9ca
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4da9ca
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004ad650
mov eax, dword [edi - 0xc]
mov ecx, ebx
mov dword [esp + 0x3c], ebx
mov dword [ecx + 0x10], eax
mov eax, 0x1000
or word [ecx + 2], ax
call fcn.004ad650
mov eax, dword [esi]
mov ecx, dword [eax + 0x54]
mov eax, ebx
cmp dword [eax + 0x38], ecx
jle 0x4daa04
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
add esp, 0xc
cmp dword [edi - 0x2c], 0
je 0x4daae2
mov ecx, dword [esi]
mov edx, 0x13
push 1
push 0
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x24], ecx
test ebx, ebx
jne 0x4daab7
mov esi, dword [esp + 0x1c]
test esi, esi
je 0x4daade
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], bx
jl 0x4daade
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4daa94
cmp esi, dword [ecx + 0xf0]
jb 0x4daa94
cmp esi, dword [ecx + 0xf4]
jae 0x4daa94
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], esi
mov eax, dword [edi - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
push esi
call fcn.00491400
mov eax, dword [edi - 0x38]
add esp, 4
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4daad7
mov eax, 0x100
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4daad7
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov dword [esp + 0x3c], ebx
mov eax, dword [edi - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
lea eax, [edi + 4]
push eax
push edx
xor edx, edx
call fcn.004ba100
mov ecx, dword [edi - 0x2c]
mov edx, 0x48
mov dword [esp + 0x24], ecx
mov ecx, dword [esi]
push 1
push 0
mov dword [esp + 0x24], eax
call fcn.004ad6e0
mov ecx, eax
add esp, 0x10
mov eax, dword [esi]
mov ebx, ecx
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4daba6
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4dab8f
mov ecx, dword [esp + 0x24]
mov edx, eax
call fcn.004ade90
mov ecx, dword [esp + 0x1c]
cmp word [ecx + 2], bx
jl 0x4dab8f
mov edx, dword [esp + 0x24]
test edx, edx
je 0x4dab86
cmp ecx, dword [edx + 0xf0]
jb 0x4dab86
cmp ecx, dword [edx + 0xf4]
jae 0x4dab86
mov eax, dword [edx + 0xec]
mov dword [ecx], eax
dec dword [edx + 0xe4]
mov dword [edx + 0xec], ecx
jmp 0x4dab8f
push ecx
call fcn.00491400
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, dword [esi]
mov dword [esp + 0x3c], ebx
call fcn.004ba3d0
xor eax, eax
mov dword [esp + 0x18], eax
jmp 0x4dac16
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x4dabc1
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4dabc1
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004ad650
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x30]
xor edx, edx
mov dword [esp + 0x5c], ebx
mov ecx, esi
call fcn.004c6580
mov ecx, ebx
add esp, 0x20
mov dword [ecx + 0x10], eax
mov eax, 0x1000
or word [ecx + 2], ax
call fcn.004ad650
mov eax, dword [esi]
mov ecx, dword [eax + 0x54]
mov eax, ebx
cmp dword [eax + 0x38], ecx
jle 0x4dac16
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
add esp, 0xc
cmp dword [edi - 0x1c], 0
je 0x4dacb8
mov ecx, dword [esi]
mov edx, 0x13
push 1
push 0
call fcn.004ad6e0
mov ecx, dword [esi]
mov ebx, eax
add esp, 8
mov dword [esp + 0x24], ecx
test ebx, ebx
jne 0x4dac8d
mov esi, dword [esp + 0x18]
test esi, esi
je 0x4dacb4
mov edx, esi
call fcn.004ade90
cmp word [esi + 2], bx
jl 0x4dacb4
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4dac82
cmp esi, dword [ecx + 0xf0]
jb 0x4dac82
cmp esi, dword [ecx + 0xf4]
jae 0x4dac82
mov eax, dword [ecx + 0xec]
mov dword [esi], eax
dec dword [ecx + 0xe4]
mov dword [ecx + 0xec], esi
jmp 0x4dacb4
push esi
call fcn.00491400
add esp, 4
jmp 0x4dacb4
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4dacad
mov eax, 0x100
mov dword [ebx + 8], ecx
test word [ecx + 2], ax
je 0x4dacad
or word [ebx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov ecx, ebx
call fcn.004ad650
mov dword [esp + 0x3c], ebx
mov ecx, dword [edi + 4]
mov eax, dword [edi - 0x28]
mov dword [esp + 0x40], eax
test ecx, ecx
je 0x4dacd4
mov eax, dword [edi + 8]
add eax, ecx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov eax, dword [edi - 0xc]
add eax, dword [edi - 8]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
mov edx, 0x14
push 1
push 0
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4dad53
mov ecx, ebx
call fcn.004ad650
mov eax, dword [esp + 0x14]
mov ecx, ebx
mov dword [esp + 0x3c], ebx
mov eax, dword [eax]
mov dword [ebx + 0x10], eax
mov eax, 0x1000
or word [ebx + 2], ax
call fcn.004ad650
mov eax, dword [esi]
mov eax, dword [eax + 0x54]
cmp dword [ebx + 0x38], eax
jle 0x4dadbb
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
mov eax, dword [edi - 0x2c]
add esp, 0xc
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov eax, dword [esp + 0x14]
mov esi, dword [esi]
mov dword [esp + 0x3c], ebx
mov eax, dword [eax]
mov dword [esp + 0x24], eax
test eax, eax
je 0x4dadbb
mov edx, eax
mov ecx, esi
call fcn.004c6510
mov ecx, dword [esp + 0x24]
test esi, esi
je 0x4dadb2
cmp ecx, dword [esi + 0xf0]
jb 0x4dadb2
cmp ecx, dword [esi + 0xf4]
jae 0x4dadb2
mov eax, dword [esi + 0xec]
mov dword [ecx], eax
dec dword [esi + 0xe4]
mov dword [esi + 0xec], ecx
mov eax, dword [edi - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
push ecx
call fcn.00491400
add esp, 4
mov eax, dword [edi - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
push 0
push dword [edx]
mov edx, 0x86
mov ecx, esi
push dword [edi - 0x2c]
call fcn.004ad900
mov edx, dword [edi - 0x1c]
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x3c], ebx
test ebx, ebx
je 0x4dae2d
mov ecx, ebx
mov dword [ebx + 0x10], edx
call fcn.004ad650
mov eax, dword [esi]
mov eax, dword [eax + 0x54]
cmp dword [ebx + 0x38], eax
jle 0x4dae34
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push esi
call fcn.004936e0
mov eax, dword [edi - 0x3c]
add esp, 0xc
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
call fcn.004aedc0
mov eax, dword [edi - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov edx, dword [edi - 0x3c]
push dword [edi - 0x1c]
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov edx, eax
mov ecx, esi
push dword [edi + 4]
call fcn.004aeb40
mov ebx, eax
add esp, 4
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
xor edx, edx
jmp 0x4dae4d
push dword [edi - 0x6c]
mov ecx, dword [esi]
lea eax, [edi + 4]
push 0
push eax
lea eax, [edi - 0x9c]
push eax
push dword [edi - 0x8c]
lea eax, [edi - 0x2c]
push dword [edx]
xor edx, edx
push 0
push eax
call fcn.004ba100
add esp, 8
lea edx, [edi - 0x5c]
mov ecx, esi
push eax
lea eax, [edi - 0x4c]
push eax
call fcn.004b8d30
add esp, 0x20
jmp case.0x4d8672.10
mov ebx, 2
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
xor ebx, ebx
cmp dword [edi - 8], ebx
jbe 0x4daefa
mov ecx, dword [esi]
lea eax, [esp + 0x2c]
push ebx
push eax
mov edx, 0x98
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
call fcn.004ad6e0
push dword [esp + 0x1c]
mov ebx, eax
mov ecx, esi
mov edx, ebx
call fcn.004ad100
add esp, 0xc
mov edx, dword [edi - 0x3c]
mov ecx, esi
push ebx
call fcn.004aeb40
add esp, 4
mov ebx, eax
lea eax, [edi - 0x1c]
mov dword [esp + 0x3c], ebx
mov edx, ebx
mov ecx, esi
push 1
push eax
call fcn.004aece0
add esp, 8
test ebx, ebx
je case.0x4d8672.10
mov ecx, dword [esi]
mov eax, dword [ebx]
cmp eax, dword [ecx + 0x50]
jle 0x4daf44
push str.index
push str.too_many_columns_in__s
push esi
call fcn.004936e0
add esp, 0xc
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xc]
lea edx, [eax + eax*4]
mov al, byte [edi + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d8672.10
xor ebx, ebx
cmp dword [edi - 8], ebx
jbe 0x4daf8e
mov ecx, dword [esi]
mov edx, 0x98
push 1
push ebx
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4daf7e
mov ecx, ebx
call fcn.004ad650
push dword [esp + 0x14]
mov edx, ebx
mov ecx, esi
call fcn.004ad100
add esp, 4
push ebx
xor edx, edx
mov ecx, esi
call fcn.004aeb40
add esp, 4
mov ebx, eax
lea eax, [edi - 0x1c]
mov dword [esp + 0x3c], ebx
mov edx, ebx
mov ecx, esi
push 1
push eax
call fcn.004aece0
add esp, 8
test ebx, ebx
je case.0x4d8672.10
mov ecx, dword [esi]
mov eax, dword [ebx]
cmp eax, dword [ecx + 0x50]
jle 0x4daf44
push str.index
push str.too_many_columns_in__s
push esi
call fcn.004936e0
mov eax, dword [ebx]
add esp, 0xc
mov ecx, dword [ebx + 0xc]
lea edx, [eax + eax*4]
mov al, byte [edi + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d8672.10
xor ebx, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
jmp case.0x4d8672.10
push dword [edx]
mov edx, dword [edi + 4]
mov ecx, esi
call fcn.004b9bf0
add esp, 4
jmp case.0x4d8672.10
push 0
lea eax, [edi + 4]
mov ecx, esi
push 0
push eax
call fcn.004c2f40
add esp, 0xc
jmp case.0x4d8672.10
push 0
lea eax, [edi + 4]
mov ecx, esi
push eax
lea eax, [edi - 0x1c]
lea edx, [edi - 0x2c]
push eax
call fcn.004c2f40
add esp, 0xc
jmp case.0x4d8672.10
push 0
push edx
lea eax, [edi - 0x2c]
mov ecx, esi
push eax
lea edx, [edi - 0x3c]
call fcn.004c2f40
add esp, 0xc
jmp case.0x4d8672.10
push 1
jmp 0x4db027
push 1
push edx
lea eax, [edi - 0x2c]
mov ecx, esi
lea edx, [edi - 0x3c]
push eax
call fcn.004c2f40
add esp, 0xc
jmp case.0x4d8672.10
mov ebx, 0x22
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 0x1e
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 0x30
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
movzx ebx, byte [edi + 2]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], 0
jmp case.0x4d8672.10
mov eax, dword [edi + 4]
mov ebx, 0x6a
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
jmp case.0x4d8672.10
mov eax, dword [edi - 0x1c]
mov ecx, dword [eax + 0x24]
mov eax, dword [edx]
mov dword [ecx + 0x20], eax
mov ecx, dword [edi - 0x1c]
mov eax, dword [edx]
mov dword [ecx + 0x24], eax
mov ebx, dword [edi - 0x1c]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov eax, dword [edx]
mov dword [eax + 0x24], eax
mov ebx, dword [edx]
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
push str.qualified_table_names_are_not_allowed_on_INSERT__UPDATE__and_DELETE_statements_within_triggers
push esi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], eax
call fcn.004936e0
add esp, 8
jmp case.0x4d8672.10
push str.the_INDEXED_BY_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push esi
call fcn.004936e0
add esp, 8
jmp case.0x4d8672.10
push str.the_NOT_INDEXED_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push esi
call fcn.004936e0
add esp, 8
jmp case.0x4d8672.10
mov ecx, dword [esi]
mov edx, 0x38
push 1
push 0
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4db165
mov ecx, ebx
call fcn.004ad650
mov byte [ebx + 1], 4
mov eax, dword [edi - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ecx, dword [esi]
push 1
push edx
mov edx, 0x38
call fcn.004ad6e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4db1a4
mov ecx, ebx
call fcn.004ad650
mov al, byte [edi - 0x2c]
mov byte [ebx + 1], al
mov eax, dword [edi - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 8]
add eax, dword [edi + 4]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
jmp case.0x4d8672.10
mov ebx, 1
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
mov ebx, 3
mov dword [esp + 0x3c], ebx
jmp case.0x4d8672.10
push dword [edi + 4]
push dword [edx]
mov edx, 0x18
push dword [edi - 0x2c]
push ecx
push 0x541f9c
mov ecx, esi
call fcn.004b53a0
add esp, 0x14
jmp case.0x4d8672.10
push dword [edi + 4]
mov edx, 0x19
push 0
push 0
push ecx
push 0x5425d4
mov ecx, esi
call fcn.004b53a0
add esp, 0x14
jmp case.0x4d8672.10
mov edx, dword [edi - 0x2c]
lea eax, [edi + 4]
push eax
mov ecx, esi
call fcn.004b3d70
add esp, 4
jmp case.0x4d8672.10
lea edx, [edi + 4]
mov ecx, esi
call fcn.004b44a0
jmp case.0x4d8672.10
mov eax, dword [esi]
mov ecx, esi
mov byte [eax + 0xe2], 0
mov edx, dword [edi + 4]
call fcn.004b47b0
jmp case.0x4d8672.10
xor edx, edx
mov ecx, esi
call fcn.004d1c00
jmp case.0x4d8672.10
lea edx, [edi + 4]
mov ecx, esi
call fcn.004d1c00
jmp case.0x4d8672.10
lea eax, [edi + 4]
mov ecx, esi
push eax
lea eax, [edi - 0x1c]
push eax
lea edx, [edi - 0x2c]
call fcn.004d19a0
add esp, 8
jmp case.0x4d8672.10
mov ecx, esi
call fcn.004d1b20
mov dword [esi + 0x1f4], 0
mov dword [esi + 0x1f8], 0
jmp case.0x4d8672.10
mov ecx, dword [esi + 0x1f4]
test ecx, ecx
jne 0x4db2ba
mov eax, dword [edi + 4]
mov dword [esi + 0x1f4], eax
mov eax, dword [edi + 8]
jmp 0x4db2c2
mov eax, dword [edi + 8]
sub eax, ecx
add eax, dword [edi + 4]
mov dword [esi + 0x1f8], eax
mov ecx, dword [esp + 0x28]
mov al, byte [ecx*2 + 0x525ac0]
movzx edx, byte [ecx*2 + 0x525ac1]
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x20]
movzx esi, byte [esp + 0x13]
mov ecx, dword [eax]
sub ecx, edx
mov dword [eax], ecx
mov eax, edx
shl eax, 4
sub edi, eax
mov dword [esp + 0x28], ecx
movzx eax, word [edi]
movsx eax, word [eax*2 + 0x526038]
add eax, esi
movzx eax, word [eax*2 + 0x526720]
mov ecx, eax
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x28]
cmp eax, 0x275
jae 0x4db36e
test edx, edx
je 0x4db353
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
mov word [edi + 0x10], ax
mov al, byte [esp + 0x13]
mov byte [edi + 0x12], al
mov eax, dword [esp + 0x40]
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 0x1c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x3c]
mov edx, eax
push ecx
mov ecx, dword [esp + 0x24]
push esi
call fcn.004d8590
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x20]
mov esi, dword [ebx + 8]
test ecx, ecx
js 0x4db39e
lea esp, [esp]
shl ecx, 4
lea eax, [ebx + 0x10]
add eax, ecx
push eax
mov dl, byte [ecx + ebx + 0xe]
mov ecx, ebx
call fcn.004d8380
add esp, 4
add dword [ebx], 0xffffffff
mov ecx, dword [ebx]
jns 0x4db380
pop edi
mov dword [ebx + 8], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret