Function at 0x5300bc
Capabilities:
Authenticate hmac
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x17c
mov ebx, dword [esp + 0x190]
mov ebx, dword [ebx + 0x110]
mov dword [esp + 0xb8], ebx
add ebx, 4
mov dword [esp + 0xd0], ebx
mov ebx, dword [esp + 0x194]
mov ebx, dword [ebx + 0x48]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x194]
mov eax, dword [ebx + 0x40]
add eax, dword [ebx + 0x44]
lea edx, [eax + 0xa]
xor ecx, ecx
mov eax, dword [esp + 0xb8]
call fcn.0052f1e8
sub eax, 4
mov dword [esp + 0xb0], eax
mov eax, dword [ebx + 0x40]
mov ebx, dword [esp + 0xb0]
lea eax, [ebx + eax*4 + 4]
mov dword [esp + 0xb4], eax
add eax, 0x24
mov dword [esp + 0x90], eax
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x110]
mov eax, dword [eax]
mov dword [esp + 0xa0], eax
mov ebx, dword [esp + 0x194]
mov eax, dword [ebx + 0x14]
and eax, 1
cmp eax, 1
sbb eax, eax
add eax, 3
mov ebp, dword [esp + 0xb4]
mov dword [ebp], eax
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x284]
test eax, eax
je 0x53581c
mov edx, dword [eax + 4]
inc edx
mov ebp, dword [esp + 0xb4]
mov dword [ebp + 4], edx
mov ebx, dword [esp + 0x190]
mov edx, dword [ebx + 0x60]
mov dword [ebp + 0x10], edx
mov dword [ebp + 0x14], eax
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 0
mov ebx, dword [esp + 0x194]
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x1c], 0
mov dword [ebp + 0x20], 0
mov dword [ebp + 0x24], 0
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x64]
mov ebp, dword [eax]
mov dword [esp + 0xd4], ebp
mov eax, dword [eax + 0x28]
mov dword [esp + 0xa4], eax
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x80], ebx
mov dword [esp + 0x88], 0
mov dword [esp + 0x94], 0
xor ebp, ebp
mov dword [esp + 0x84], 0
nop
mov eax, dword [esp + 0x84]
and eax, 0x3f
inc dword [esp + 0x84]
test eax, eax
jne 0x5302d0
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x320]
mov eax, dword [eax]
test eax, eax
jne 0x53094c
mov ebx, dword [esp + 0x190]
mov ecx, dword [ebx + 0x210]
test ecx, ecx
je 0x5302d0
mov esi, dword [ebx + 0x214]
mov ebx, esi
inc ebx
mov edi, dword [esp + 0x190]
mov dword [edi + 0x214], ebx
test cl, 1
je 0x5305b4
mov esi, dword [edi + 0x224]
cmp esi, 1
je 0x5302a0
mov eax, ebx
cdq
idiv esi
test edx, edx
jne 0x5305b4
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0050088c
dec eax
je 0x5309ec
mov dword [esp + 0x94], 1
nop
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx]
cmp al, 0xa
je case.0x530557.10
cmp al, 1
je case.0x530557.1
cmp al, 0x83
jbe 0x530554
mov dword [esp + 4], eax
mov dword [esp], str.TclExecuteByteCode:_unrecognized_opCode__u
call fcn.00507f04
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov dword [esp + 4], 0xffffffff
mov dword [esp], str.divide_by_zero
call fcn.004eaf6c
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], str.divide_by_zero
mov dword [esp + 8], str.DIVZERO
mov dword [esp + 4], str.ARITH
mov dword [esp], ebx
call fcn.004e13a4
mov dword [esp + 0x94], 1
nop
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x100]
test al, 4
je 0x530ad0
mov dword [esp + 0x88], 1
and eax, 0xfffffffb
mov ebx, dword [esp + 0x190]
mov dword [ebx + 0x100], eax
test ebp, ebp
je 0x5303f4
mov esi, dword [esp + 0xb0]
mov edi, dword [esp + 0x80]
jmp 0x5303b2
mov ebp, ebx
test ebx, ebx
je 0x5303f4
cmp edi, esi
je 0x5303c1
mov eax, dword [edi]
cmp dword [ebp + 0x10], eax
jl 0x53803c
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
test eax, eax
jg 0x5303ac
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x530490
mov eax, dword [eax + 4]
test eax, eax
je 0x530490
mov dword [esp], ebp
call fcn.004dd020
mov ebp, ebx
test ebx, ebx
jne 0x5303b2
nop
mov ebx, dword [esp + 0x190]
xor ebp, ebp
mov eax, dword [ebx + 0x218]
test eax, eax
jne 0x530b80
mov ebx, dword [esp + 0xb0]
cmp dword [esp + 0x80], ebx
je 0x530b80
mov ecx, dword [esp + 0x194]
mov edx, 1
mov eax, dword [esp + 0x78]
call fcn.0052f120
mov esi, eax
test eax, eax
je 0x530b80
mov ebx, dword [esp + 0x7c]
nop
mov eax, ebx
sub eax, dword [esp + 0x90]
sar eax, 2
mov edi, dword [esp + 0x80]
cmp eax, dword [edi]
jle 0x530598
mov edi, dword [ebx]
sub ebx, 4
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jg 0x530444
mov eax, dword [edi + 0xc]
test eax, eax
je 0x530520
mov eax, dword [eax + 4]
test eax, eax
je 0x530520
mov dword [esp], edi
call fcn.004dd020
jmp 0x530444
mov eax, dword [ebp + 4]
test eax, eax
je 0x5304a7
cmp eax, dword [0x5dea6c]
je 0x5304a7
mov dword [esp], eax
call fcn.004edc48
mov dword [ebp + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebp + 0x10], eax
mov dword [0x67b764], ebp
jmp 0x5303ac
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 1]
movzx eax, dl
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + eax*8]
mov eax, dword [esi]
test al, 2
je 0x5304e9
nop
mov esi, dword [esi + 4]
mov eax, dword [esi]
test al, 2
jne 0x5304e0
test al, 0x13
jne 0x5305e8
mov eax, dword [esi + 4]
test eax, eax
je 0x5305e8
mov dword [esp + 0xf0], eax
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
inc dword [eax]
add dword [esp + 0x78], 2
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov eax, dword [edi + 4]
test eax, eax
je 0x530537
cmp eax, dword [0x5dea6c]
je 0x530537
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
jmp 0x530444
movzx edx, al
jmp dword [edx*4 + 0x616be0]
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
mov esi, dword [esp + 0x194]
nop
add ecx, 4
movzx ebx, byte [eax + 1]
mov edx, dword [esi + 0x4c]
mov edx, dword [edx + ebx*4]
mov dword [ecx], edx
inc dword [edx]
add eax, 2
cmp byte [eax], 1
je 0x530570
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], eax
jmp 0x530228
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0x194]
mov ebx, dword [ebx + 0x48]
mov edi, dword [esi + 0x18]
add ebx, edi
mov dword [esp + 0x78], ebx
jmp 0x530228
and ecx, 2
je 0x5302d0
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 0x234]
cmp ecx, 1
je 0x5302a0
mov eax, ebx
cdq
idiv ecx
test edx, edx
je 0x5302a0
jmp 0x5302d0
mov dword [esp + 0x100], 0
xor ecx, ecx
mov dword [esp + 0x94], 0
mov dword [esp + 0x70], 2
xor ebx, ebx
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xa0]
mov dword [edi + 0x10], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], 0x200
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x94]
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004f3528
mov dword [esp + 0xf0], eax
test eax, eax
je 0x5309ec
mov esi, dword [esp + 0x70]
add dword [esp + 0x78], esi
inc dword [eax]
mov dword [esp + 0x94], 1
cmp ebx, 1
je 0x530728
cmp ebx, 2
je 0x5308dc
test ebx, ebx
jne 0x5309fc
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 0x7c]
add dword [esp + 0x7c], 4
mov dword [edx + 4], eax
jmp 0x530228
mov eax, dword [eax + 0x10]
lea edx, [eax + 0x10]
mov dword [esp + 0x100], edx
mov eax, dword [eax + 8]
mov dword [esp + 0xf8], eax
shl esi, 0x18
shl ebx, 0x10
or esi, ebx
and edi, 0xff
or esi, edi
movzx eax, byte [esp + 0x70]
shl eax, 8
or esi, eax
cmp esi, 0xffffffff
jl 0x53682e
mov dword [esp + 0x104], esi
mov ebx, 5
test esi, esi
js 0x53577f
cmp dword [esp + 0xf8], esi
jle 0x53577f
mov eax, dword [esp + 0x100]
mov eax, dword [eax + esi*4]
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
mov dword [eax], edx
add dword [esp + 0x78], ebx
mov dword [esp + 0x88], 0
nop
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x530928
mov eax, dword [esp + 0xf0]
mov ebx, dword [esp + 0x7c]
mov dword [ebx], eax
jmp 0x530228
mov eax, dword [esp + 0x78]
movzx ebx, byte [eax + 2]
shl ebx, 0x10
movzx eax, byte [eax + 1]
shl eax, 0x18
or ebx, eax
mov edx, dword [esp + 0x78]
movzx eax, byte [edx + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [edx + 4]
or ebx, eax
mov ecx, dword [esp + 0xa4]
lea esi, [ecx + ebx*8]
mov eax, dword [esi]
test al, 2
je 0x53078d
mov esi, dword [esi + 4]
mov eax, dword [esi]
test al, 2
jne 0x530784
test al, 0x13
jne 0x530798
mov edi, dword [esi + 4]
test edi, edi
jne 0x5307f2
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xa0]
mov dword [edi + 0x10], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004f3528
mov edi, eax
test eax, eax
je 0x5365a6
mov dword [esp + 0x94], 1
cmp dword [edi], 1
jg 0x534f03
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x7c]
mov eax, dword [edx - 4]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.005166a4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov dword [esp + 0x70], 0
mov ecx, dword [esp + 0x78]
mov al, byte [ecx]
cmp al, 0x72
je 0x5372a0
cmp al, 0x73
je 0x5372e1
mov dword [esp], str.Should_not_happen_
call fcn.00507f04
mov eax, dword [esp + 0x100]
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x7c]
mov eax, dword [edx - 4]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.00516438
test byte [esi], 0x2b
jne 0x537359
mov eax, dword [esp + 0x70]
test eax, eax
je 0x5308ad
mov ebx, dword [esi + 4]
inc dword [edi]
test ebx, ebx
je 0x5308aa
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x537d4a
mov dword [esi + 4], edi
mov dword [esp + 0xf0], edi
mov ebx, dword [esp + 0x78]
cmp byte [ebx + 5], 3
je 0x5373e2
mov eax, dword [esp + 0xf0]
inc dword [eax]
add dword [esp + 0x78], 5
mov dword [esp + 0x88], 0
nop
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
sub esi, 4
mov dword [esp + 0x7c], esi
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jg 0x530728
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x530b4a
mov eax, dword [eax + 4]
test eax, eax
je 0x530b4a
mov dword [esp], ebx
call fcn.004dd020
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jg 0x53073b
nop
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x530a9f
mov eax, dword [eax + 4]
test eax, eax
je 0x530a9f
mov dword [esp], ebx
call fcn.004dd020
jmp 0x53073b
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0053c364
mov dword [esp + 0x94], 1
dec eax
jne 0x530258
jmp 0x530368
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x536533
cmp eax, 0x5dea1c
je 0x536ba2
cmp eax, 0x5dea44
je 0x53522f
test eax, eax
jne 0x534d0e
mov ecx, dword [ebx + 4]
test ecx, ecx
jne 0x534d15
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], ecx
mov ecx, ebx
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
mov eax, dword [esp + 0x190]
call fcn.0052f414
nop
mov dword [esp + 0x94], 1
jmp 0x530368
lea esi, [ebx - 2]
mov dword [esp + 0x98], esi
mov esi, 2
sub esi, ebx
xor ebx, ebx
mov dword [esp + 0xa8], ebp
mov ebp, dword [esp + 0x7c]
cmp ebx, esi
je 0x530a32
nop
mov edi, dword [ebp + ebx*4]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x530a54
dec ebx
cmp ebx, esi
jne 0x530a20
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0x98]
neg esi
mov ebx, dword [esp + 0x7c]
lea ebx, [ebx + esi*4]
mov dword [esp + 0x7c], ebx
jmp 0x5308dc
mov eax, dword [edi + 0xc]
test eax, eax
je 0x530a70
mov edx, dword [eax + 4]
test edx, edx
je 0x530a70
mov dword [esp], edi
call fcn.004dd020
dec ebx
jmp 0x530a2e
mov eax, dword [edi + 4]
test eax, eax
je 0x530a87
cmp eax, dword [0x5dea6c]
je 0x530a87
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
dec ebx
jmp 0x530a2e
mov eax, dword [ebx + 4]
test eax, eax
je 0x530ab6
cmp eax, dword [0x5dea6c]
je 0x530ab6
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x53073b
lea ecx, [esp + 0x104]
mov edx, dword [esp + 0x194]
mov eax, dword [esp + 0x78]
call fcn.0052ef2c
test eax, eax
je 0x5348b5
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov edx, dword [esp + 0x104]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x194]
mov eax, dword [ebx + 0x18]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052ed48
mov eax, dword [ebx + 0x100]
mov dword [esp + 0x88], 1
mov dword [esp + 0x94], 1
jmp 0x530388
mov eax, dword [ebx + 4]
test eax, eax
je 0x530b61
cmp eax, dword [0x5dea6c]
je 0x530b61
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x530728
sub dword [esp + 0x7c], 4
mov ebx, dword [esp + 0x7c]
cmp dword [esp + 0x90], ebx
jae 0x530bd0
mov esi, dword [esp + 0x90]
jmp 0x530b9c
cmp esi, ebx
jae 0x530bb6
mov eax, dword [ebx]
sub ebx, 4
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jg 0x530b98
mov dword [esp], eax
call fcn.004dd020
cmp esi, ebx
jb 0x530b9c
mov eax, dword [esp + 0x90]
not eax
mov ebx, dword [esp + 0x7c]
add eax, ebx
not eax
and eax, 0xfffffffc
add ebx, eax
mov dword [esp + 0x7c], ebx
test ebp, ebp
je 0x530bec
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
test eax, eax
jle 0x530c74
mov ebp, ebx
test ebp, ebp
jne 0x530bd4
mov ebx, dword [esp + 0x90]
cmp dword [esp + 0x7c], ebx
jae 0x530c44
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x7c]
sub eax, ebx
sar eax, 2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x194]
sub eax, dword [ebx + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], str._nTclExecuteByteCode:_abnormal_return_at_pc__u:_stack_top__d___entry_stack_top__d_n
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], str.TclExecuteByteCode_execution_failure:_end_stack_top___start_stack_top
call fcn.00507f04
mov eax, dword [esp + 0xb0]
add eax, 4
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052f7e8
mov eax, dword [esp + 0x88]
add esp, 0x17c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x530c91
mov edi, dword [eax + 4]
test edi, edi
je 0x530c91
mov dword [esp], ebp
call fcn.004dd020
mov ebp, ebx
jmp 0x530be8
mov eax, dword [ebp + 4]
test eax, eax
je 0x530ca8
cmp eax, dword [0x5dea6c]
je 0x530ca8
mov dword [esp], eax
call fcn.004edc48
mov dword [ebp + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebp + 0x10], eax
mov dword [0x67b764], ebp
mov ebp, ebx
jmp 0x530be8
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
sub esi, 4
mov dword [esp + 0x7c], esi
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x5360c6
mov eax, dword [esp + 0x78]
inc eax
mov ebx, dword [esp + 0x78]
cmp byte [ebx + 1], 0x69
mov dword [esp + 0x78], eax
jne 0x530228
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 6]
shl eax, 0x10
movzx edx, byte [ebx + 5]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 7]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 8]
or eax, edx
mov ebx, dword [esp + 0x190]
add dword [ebx + 0xc0], eax
mov ebx, dword [esp + 0x94]
test ebx, ebx
je 0x534a4a
mov ebx, dword [esp + 0x190]
mov esi, dword [ebx + 0xf0]
mov ebx, dword [esp + 0x194]
cmp dword [ebx + 4], esi
je 0x534a2d
mov ebx, dword [esp + 0x194]
test byte [ebx + 0x14], 1
jne 0x534a4a
lea ecx, [esp + 0x104]
mov edx, ebx
mov eax, dword [esp + 0x78]
call fcn.0052ef2c
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x104]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e8088
mov dword [esp + 0x88], eax
test eax, eax
je 0x537624
dec eax
je 0x536eca
xor ebx, ebx
mov dword [esp + 0x94], 1
jmp 0x53319a
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
mov eax, dword [esi + 0xc]
cmp eax, 0x5dea30
je 0x536044
cmp eax, 0x5dea1c
je 0x536a2f
cmp eax, 0x5dea44
je 0x5351f7
test eax, eax
je 0x53575f
mov eax, dword [esi + 4]
test eax, eax
je 0x530e14
mov eax, dword [esi + 8]
test eax, eax
je 0x53576a
lea edi, [esp + 0x104]
mov dword [esp + 0xc], edi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x53576a
mov eax, dword [esp + 0x104]
cmp eax, 5
je 0x53576a
jbe 0x53605e
mov dword [esp + 0x88], 0
mov ebx, dword [esp + 0x7c]
mov edi, dword [ebx]
mov eax, dword [edi + 0xc]
cmp eax, 0x5dea30
je 0x53613b
cmp eax, 0x5dea1c
je 0x536b1f
cmp eax, 0x5dea44
je 0x53649c
test eax, eax
je 0x535352
mov eax, dword [edi + 4]
test eax, eax
je 0x530ea3
mov esi, dword [edi + 8]
test esi, esi
je 0x530ed1
lea esi, [esp + 0x104]
mov dword [esp + 0xc], esi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de904
test eax, eax
je 0x536905
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x3a
je 0x5354d5
inc dword [esp + 0x78]
jmp 0x530228
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
mov eax, dword [ebx - 4]
mov edi, dword [eax + 4]
test edi, edi
je 0x537dec
mov eax, dword [eax + 8]
mov dword [esp + 0xf4], eax
cmp dword [esi + 0xc], 0x5dea98
je 0x535b42
lea eax, [esp + 0x104]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004df7fc
mov dword [esp + 0x88], eax
test eax, eax
je 0x534f86
nop
cmp dword [esp + 0x88], 1
je 0x530368
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x100]
jmp 0x530388
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov ebx, dword [esp + 0x78]
movzx esi, byte [ebx + 1]
mov edi, ebx
movzx ebx, byte [ebx + 2]
mov dl, byte [edi + 3]
mov byte [esp + 0x70], dl
movzx edi, byte [edi + 4]
mov ecx, dword [esp + 0x78]
mov cl, byte [ecx + 5]
mov byte [esp + 0x98], cl
mov edx, dword [esp + 0x78]
mov dl, byte [edx + 6]
mov byte [esp + 0xa8], dl
mov ecx, dword [esp + 0x78]
mov cl, byte [ecx + 7]
mov byte [esp + 0xbc], cl
mov edx, dword [esp + 0x78]
mov dl, byte [edx + 8]
mov byte [esp + 0xc0], dl
cmp dword [eax + 0xc], 0x5dea98
je 0x535b54
lea ecx, [esp + 0x100]
mov dword [esp + 0xc], ecx
lea edx, [esp + 0x104]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004df5d4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov eax, dword [esp + 0x78]
cmp byte [eax + 9], 3
je 0x53685f
mov ecx, esi
shl ecx, 0x18
shl ebx, 0x10
or ecx, ebx
and edi, 0xff
or ecx, edi
movzx eax, byte [esp + 0x70]
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0x104]
cmp ecx, 0xffffffff
jl 0x5367a4
cmp ecx, eax
jle 0x53103c
mov ecx, eax
mov dl, byte [esp + 0x98]
shl edx, 0x18
movzx ebx, byte [esp + 0xa8]
shl ebx, 0x10
or edx, ebx
movzx ebx, byte [esp + 0xc0]
or edx, ebx
movzx ebx, byte [esp + 0xbc]
shl ebx, 8
or edx, ebx
cmp edx, 0xffffffff
jl 0x53678c
mov ebx, eax
cmp eax, edx
jle 0x53107b
mov ebx, edx
cmp ecx, ebx
jg 0x535adc
cmp ecx, eax
jge 0x535adc
test ebx, ebx
js 0x535adc
test ecx, ecx
js 0x53aa4d
cmp ebx, eax
jl 0x5310a2
lea ebx, [eax - 1]
mov eax, dword [esp + 0x100]
lea eax, [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, ebx
sub eax, ecx
inc eax
mov dword [esp], eax
call fcn.004df428
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x535b1b
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov ebx, dword [esp + 0x78]
movzx esi, byte [ebx + 1]
mov edi, ebx
movzx ebx, byte [ebx + 2]
mov dl, byte [edi + 3]
mov byte [esp + 0x70], dl
movzx edi, byte [edi + 4]
cmp dword [eax + 0xc], 0x5dea98
je 0x5306a7
lea ecx, [esp + 0x100]
mov dword [esp + 0xc], ecx
lea edx, [esp + 0xf8]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.004df5d4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
jmp 0x5306be
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 2]
shl edx, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edx, eax
movzx eax, byte [ebx + 4]
or edx, eax
movzx esi, byte [ebx + 6]
shl esi, 0x10
movzx eax, byte [ebx + 5]
shl eax, 0x18
or esi, eax
movzx eax, byte [ebx + 7]
shl eax, 8
or esi, eax
movzx eax, byte [ebx + 8]
or esi, eax
mov dword [esp + 0x70], esi
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + esi*8]
mov eax, dword [esi]
test al, 2
je 0x531195
nop
mov esi, dword [esi + 4]
mov eax, dword [esi]
test al, 2
jne 0x53118c
test al, 0x13
jne 0x535011
mov edi, dword [esi + 4]
test edi, edi
je 0x535011
cmp dword [edi], 1
jg 0x534f54
mov dword [esp + 0x98], 0
mov ebx, dword [esp + 0x78]
mov al, byte [ebx]
cmp al, 0x70
je 0x535e7d
cmp al, 0x71
je 0x535d60
cmp al, 0x6f
je 0x535bee
mov dword [esp], str.Should_not_happen_
call fcn.00507f04
xor ebx, ebx
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x53562a
test byte [esi], 0x2b
jne 0x53641e
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x531224
mov eax, dword [esi + 4]
inc dword [edi]
test eax, eax
je 0x531221
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x536e75
mov dword [esi + 4], edi
mov dword [esp + 0xf0], edi
mov edi, dword [esp + 0x78]
cmp byte [edi + 9], 3
je 0x536b08
add dword [esp + 0x78], 9
mov eax, dword [esp + 0xf0]
inc dword [eax]
jmp 0x53130b
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 2]
shl ebx, 0x10
movzx eax, byte [esi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [esi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [esi + 4]
or ebx, eax
lea eax, [ebx*4]
mov edi, dword [esp + 0x7c]
sub edi, eax
mov eax, dword [edi]
cmp ebx, 1
jle 0x5312bd
mov dword [esp + 0x10], 0
mov edx, ebx
neg edx
mov ecx, dword [esp + 0x7c]
lea edx, [ecx + edx*4 + 4]
mov dword [esp + 0xc], edx
lea edx, [ebx - 1]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov esi, dword [esp + 0x190]
mov dword [esp], esi
call fcn.00519048
test eax, eax
je 0x530368
lea edx, [esp + 0xf0]
mov dword [esp + 0xc], edx
mov edi, dword [esp + 0x7c]
mov edx, dword [edi]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.005166a4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov eax, dword [esp + 0xf0]
test eax, eax
je 0x5367c9
add dword [esp + 0x78], 5
inc ebx
inc dword [eax]
mov dword [esp + 0x88], 0
jmp 0x530675
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov dword [esp + 0xf0], eax
sub ebx, 4
mov esi, dword [esp + 0x7c]
mov eax, dword [esi - 4]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x190]
mov dword [esp], edi
call fcn.004e1cbc
mov dword [esp + 0x88], eax
mov eax, dword [esi - 4]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x5366cc
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 0x7c]
mov dword [edx - 4], eax
mov edi, dword [esp + 0x88]
test edi, edi
jne 0x535d38
inc dword [esp + 0x78]
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e1b38
mov dword [esp + 0xf0], eax
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
inc dword [eax]
inc dword [esp + 0x78]
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov ebx, dword [esp + 0x7c]
mov edx, dword [ebx]
mov edi, dword [ebx - 4]
mov ebx, 2
lea esi, [esp + 0x100]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x6169de
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov eax, dword [esp + 0x190]
mov dword [esp], eax
mov dword [esp + 0x50], edx
call fcn.004f49d8
mov esi, eax
test eax, eax
mov edx, dword [esp + 0x50]
je 0x535839
test byte [eax], 0x10
jne 0x531464
mov eax, dword [esp + 0x100]
test eax, eax
je 0x531437
test byte [eax], 0x10
jne 0x531464
mov eax, 1
mov edx, dword [esi + 4]
test edx, edx
je 0x535826
mov ecx, dword [esp + 0xb8]
mov eax, dword [ecx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [esp + 0x78]
inc dword [eax]
jmp 0x530675
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xa0]
mov dword [ecx + 0x10], eax
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.0054f740
mov dword [esp + 0x94], 1
jmp 0x531437
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 2]
shl ebx, 0x10
movzx eax, byte [esi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [esi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [esi + 4]
or ebx, eax
mov eax, dword [esp + 0x7c]
mov edi, dword [eax]
mov edx, dword [esp + 0xa4]
lea eax, [edx + ebx*8]
mov dword [esp + 0x100], eax
test byte [eax], 2
je 0x53150f
nop
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x531500
mov dword [esp + 0x100], eax
mov edx, dword [eax]
and edx, 0x11
dec edx
je 0x535cfe
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x100]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x6169de
mov dword [esp + 0xc], 0
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004f4034
mov esi, eax
test eax, eax
je 0x535cf7
test byte [eax], 0x10
jne 0x531584
mov eax, dword [esp + 0x100]
test eax, eax
je 0x5315db
test byte [eax], 0x10
je 0x5315db
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], edx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], esi
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0054f740
mov dword [esp + 0x94], 1
mov eax, 1
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x535ce4
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
add dword [esp + 0x78], 5
jmp 0x530728
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 2]
shl edx, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edx, eax
movzx eax, byte [ebx + 4]
or edx, eax
mov esi, dword [esp + 0xa4]
lea ebx, [esi + edx*8]
mov eax, dword [ebx]
test al, 2
je 0x531645
mov ebx, dword [ebx + 4]
mov eax, dword [ebx]
test al, 2
jne 0x53163c
test al, 0x10
jne 0x535f84
mov esi, dword [ebx + 4]
test esi, esi
je 0x5351bc
mov eax, 1
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
jmp 0x532400
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov edi, dword [esp + 0x78]
movsx eax, byte [edi + 1]
mov dword [esp + 8], eax
mov eax, dword [esi - 4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.0051f564
test eax, eax
je 0x536985
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0051f6dc
test eax, eax
js 0x536985
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
add dword [esp + 0x78], 2
jmp 0x5308dc
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
neg eax
mov ebx, dword [esp + 0x7c]
lea eax, [ebx + eax*4 + 4]
cmp ebx, eax
jbe 0x53173a
mov edx, ebx
lea esi, [esi]
mov ecx, dword [eax]
mov ebx, dword [edx]
mov dword [eax], ebx
mov dword [edx], ecx
add eax, 4
sub edx, 4
cmp eax, edx
jb 0x531728
add dword [esp + 0x78], 5
jmp 0x530228
lea eax, [esp + 0xfc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169de
mov dword [esp + 0xc], 0x202
mov dword [esp + 8], 0
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f49d8
test eax, eax
je 0x530368
mov edx, dword [eax]
test dl, 0x80
je 0x534e5d
mov ebx, dword [esp + 0x78]
movsx edx, byte [ebx + 1]
shl edx, 0x18
movzx ecx, byte [ebx + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [ebx + 4]
or edx, ecx
movzx ecx, byte [ebx + 3]
shl ecx, 8
or edx, ecx
mov ebx, dword [esp + 0xa4]
lea ecx, [ebx + edx*8]
mov dword [esp + 0xfc], ecx
cmp eax, ecx
je 0x5349f2
mov esi, dword [ecx]
test esi, 0x870
jne 0x5349f2
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x531817
test esi, 2
je 0x5349f2
cmp eax, ebx
je 0x53182a
test byte [ebx], 4
je 0x531817
dec dword [ebx + 8]
mov edi, dword [ebx + 4]
test edi, edi
je 0x538056
and esi, 0xfffffffc
or esi, 2
mov dword [ecx], esi
mov dword [ecx + 4], eax
test byte [eax], 4
je 0x53182a
inc dword [eax + 8]
add dword [esp + 0x78], 5
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov dword [esp + 0x88], 0
jmp 0x5319dc
lea esi, [esp + 0x100]
mov dword [esp + 8], esi
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx - 4]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052ae10
test eax, eax
jne 0x530368
mov eax, dword [ebx + 0x64]
mov ebx, dword [eax]
mov edx, dword [esp + 0x100]
mov dword [eax], edx
lea eax, [esp + 0xfc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169de
mov dword [esp + 0xc], 0x202
mov dword [esp + 8], 0
mov esi, dword [esp + 0x7c]
mov eax, dword [esi]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x190]
mov dword [esp], edi
call fcn.004f49d8
mov edx, dword [edi + 0x64]
mov dword [edx], ebx
test eax, eax
jne 0x5317a3
jmp 0x530368
lea ebx, [esp + 0x100]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx - 4]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052114c
inc eax
je 0x530368
mov esi, dword [esp + 0x190]
mov ebx, dword [esi + 0x64]
mov eax, dword [esp + 0x100]
mov dword [esi + 0x64], eax
lea eax, [esp + 0xfc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169de
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], 0
mov edi, dword [esp + 0x7c]
mov eax, dword [edi]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004f49d8
mov dword [esi + 0x64], ebx
test eax, eax
jne 0x5317a3
jmp 0x530368
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
shl eax, 0x18
movzx edx, byte [ebx + 2]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
mov ebx, dword [esp + 0x194]
mov edx, dword [ebx + 0x54]
mov ebx, dword [edx + eax*8 + 4]
mov esi, dword [ebx + 0x2c]
mov edi, dword [esp + 0x7c]
mov edx, dword [edi]
mov eax, dword [edx + 4]
test eax, eax
je 0x537dc9
mov dword [esp + 4], eax
mov dword [esp], ebx
call esi
test eax, eax
je 0x536b98
mov edx, dword [eax + 0xc]
add dword [esp + 0x78], edx
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx]
nop
sub dword [esp + 0x7c], 4
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jg 0x530228
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x534884
mov eax, dword [eax + 4]
test eax, eax
je 0x534884
mov dword [esp], ebx
call fcn.004dd020
jmp 0x530228
mov ebx, dword [esp + 0x78]
movzx ebx, byte [ebx + 2]
shl ebx, 0x10
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 1]
shl eax, 0x18
or dword [esp + 0x98], eax
movzx eax, byte [ebx + 3]
shl eax, 8
or dword [esp + 0x98], eax
movzx eax, byte [ebx + 4]
or dword [esp + 0x98], eax
mov esi, dword [esp + 0x98]
mov ebx, dword [esp + 0xa4]
lea edi, [ebx + esi*8]
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 6]
shl eax, 0x10
movzx edx, byte [ebx + 5]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 7]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 8]
or eax, edx
mov ebx, dword [esp + 0x194]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + eax*8 + 4]
mov dword [esp + 0xa8], edx
mov eax, dword [edi]
test al, 2
je 0x531aa9
lea esi, [esi]
mov edi, dword [edi + 4]
mov eax, dword [edi]
test al, 2
jne 0x531aa0
test al, 0x13
jne 0x5350a6
mov eax, dword [edi + 4]
mov dword [esp + 0x70], eax
test eax, eax
je 0x5350a6
lea esi, [esp + 0x104]
mov dword [esp + 8], esi
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.00516924
test eax, eax
jne 0x530368
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
cmp dword [eax + 0xc], 0x5dea98
je 0x536751
lea edx, [esp + 0xfc]
mov dword [esp + 0xc], edx
lea esi, [esp + 0x104]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004df5d4
test eax, eax
jne 0x530368
mov eax, dword [esp + 0x70]
xor edx, edx
cmp dword [eax], 1
setg dl
mov dword [esp + 0xbc], edx
jg 0x537613
mov ecx, dword [esp + 0x104]
test ecx, ecx
jle 0x531bf9
xor ecx, ecx
mov dword [esp + 0xc4], ebp
mov esi, ecx
mov dword [esp + 0xc0], edi
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x190]
mov ebp, dword [esp + 0xa8]
mov ecx, dword [ebp + esi*4 + 4]
mov ebp, dword [esp + 0xa4]
lea edx, [ebp + ecx*8]
mov eax, dword [edx]
test al, 2
je 0x531ba8
mov ebp, dword [esp + 0xc4]
nop
mov edx, dword [edx + 4]
mov eax, dword [edx]
test al, 2
jne 0x531b98
mov dword [esp + 0xc4], ebp
test al, 0x13
jne 0x535439
mov eax, dword [edx + 4]
test eax, eax
je 0x535439
cmp ebx, eax
je 0x535492
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov eax, dword [eax + esi*4]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], edi
call fcn.00516438
inc esi
cmp dword [esp + 0x104], esi
jg 0x531b73
mov ebp, dword [esp + 0xc4]
mov edi, dword [esp + 0xc0]
test byte [edi], 0x2b
jne 0x5374a8
mov eax, dword [esp + 0x70]
inc dword [eax]
mov eax, dword [edi + 4]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x537485
mov eax, dword [esp + 0x70]
mov dword [edi + 4], eax
add dword [esp + 0x78], 9
mov edx, dword [esp + 0x7c]
mov ebx, dword [edx]
jmp 0x5319dc
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + eax*8]
mov ebx, dword [esi + 4]
test ebx, ebx
je 0x537e9d
cmp dword [ebx + 0xc], 0x5e0dd4
jne 0x53173a
mov edi, dword [ebx + 0x10]
mov dword [esp], edi
call fcn.00516e44
mov dword [esp], edi
call fcn.004edc48
mov edi, dword [ebx + 0x14]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x53a814
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x53a7f9
mov ebx, dword [0x67b764]
test ebx, ebx
je 0x53a88b
mov eax, dword [ebx + 0x10]
mov dword [0x67b764], eax
mov eax, dword [0x5dea6c]
mov dword [ebx + 4], eax
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [esi + 4], ebx
mov dword [ebx], 1
jmp 0x53173a
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
mov esi, dword [esp + 0xa4]
mov ebx, dword [esi + eax*8 + 4]
test ebx, ebx
je 0x531d1b
cmp dword [ebx + 0xc], 0x5e0dd4
je 0x531d27
mov dword [esp], str.mis_issued_dictNext_
call fcn.00507f04
lea edi, [esp + 0x104]
mov dword [esp + 0xc], edi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
lea eax, [esp + 0xfc]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call fcn.00516e6c
mov edx, dword [esp + 0x104]
test edx, edx
je 0x531f29
mov eax, dword [0x67b764]
test eax, eax
je 0x537dd6
mov ecx, dword [eax + 0x10]
mov dword [0x67b764], ecx
mov ecx, dword [0x5dea6c]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
mov ecx, ebx
add ecx, 8
mov dword [ebx + 8], eax
mov dword [eax], 2
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + edx*4 + 4]
mov dword [esp + 0xf0], eax
lea ebx, [ecx + 4]
mov dword [esp + 0x7c], ebx
mov dword [ecx + 4], eax
inc dword [eax]
add dword [esp + 0x78], 5
jmp 0x530228
mov edx, dword [esp + 0x78]
mov dl, byte [edx + 1]
mov byte [esp + 0x98], dl
mov ecx, dword [esp + 0x78]
mov cl, byte [ecx + 2]
mov byte [esp + 0xa8], cl
mov ebx, dword [esp + 0x78]
mov bl, byte [ebx + 3]
mov byte [esp + 0xbc], bl
mov edx, dword [esp + 0x78]
mov dl, byte [edx + 4]
mov byte [esp + 0xc0], dl
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
sub ebx, 4
mov dword [esp + 0x7c], ebx
mov dword [esp], 0xc
call fcn.004edaf0
mov edi, eax
lea eax, [esp + 0x104]
mov dword [esp + 0x14], eax
lea edx, [esp + 0x100]
mov dword [esp + 0x10], edx
lea eax, [esp + 0xfc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.00516da0
mov dword [esp + 0x88], eax
test eax, eax
jne 0x535eba
mov ebx, dword [0x67b764]
test ebx, ebx
je 0x537eae
mov edx, dword [ebx + 0x10]
mov dword [0x67b764], edx
mov dword [ebx], 0
mov eax, dword [0x5dea6c]
mov dword [esp + 0x70], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0x5e0dd4
mov dword [ebx + 0x10], edi
mov dword [ebx + 0x14], esi
movzx eax, byte [esp + 0xa8]
shl eax, 0x10
mov cl, byte [esp + 0x98]
shl ecx, 0x18
or eax, ecx
movzx ecx, byte [esp + 0xbc]
shl ecx, 8
or eax, ecx
movzx ecx, byte [esp + 0xc0]
or eax, ecx
mov ecx, dword [esp + 0xa4]
lea esi, [ecx + eax*8]
mov eax, dword [esi + 4]
test eax, eax
je 0x531f15
mov edi, dword [eax + 0xc]
cmp edi, 0x5e0dd4
je 0x537bfe
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
test ecx, ecx
jg 0x531f15
test edi, edi
je 0x536e98
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x536e98
mov dword [esp], eax
call fcn.004dd020
mov dword [esi + 4], ebx
inc dword [ebx]
mov edx, dword [esp + 0x104]
test edx, edx
jne 0x531d62
mov eax, dword [esp + 0x100]
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
inc dword [eax]
mov ecx, ebx
add ecx, 8
mov eax, dword [esp + 0xfc]
mov dword [ebx + 8], eax
inc dword [eax]
jmp 0x531da4
mov ebx, dword [esp + 0x78]
movzx ecx, byte [ebx + 2]
shl ecx, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or ecx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or ecx, eax
movzx eax, byte [ebx + 4]
or ecx, eax
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + ecx*8]
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 6]
shl edx, 0x10
movzx ebx, byte [ebx + 5]
shl ebx, 0x18
or edx, ebx
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 7]
shl ebx, 8
or edx, ebx
movzx ebx, byte [esi + 8]
or edx, ebx
mov edi, dword [esp + 0x194]
mov ebx, dword [edi + 0x54]
mov ebx, dword [ebx + edx*8 + 4]
mov dword [esp + 0x98], ebx
mov edx, dword [eax]
test dl, 2
je 0x531fca
nop
mov eax, dword [eax + 4]
mov edx, dword [eax]
test dl, 2
jne 0x531fc0
and edx, 0x13
jne 0x535113
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x535113
mov esi, dword [esp + 0x7c]
mov eax, dword [esi]
cmp dword [eax + 0xc], 0x5dea98
je 0x535180
lea edx, [esp + 0xfc]
mov dword [esp + 0xc], edx
lea edi, [esp + 0x104]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.004df5d4
test eax, eax
jne 0x530368
mov eax, dword [esp + 0x104]
mov edx, dword [esp + 0x98]
cmp dword [edx], eax
je 0x532047
mov dword [esp], str.dictUpdateStart_argument_length_mismatch
call fcn.00507f04
mov eax, dword [esp + 0x104]
test eax, eax
jle 0x53213d
xor esi, esi
mov dword [esp + 0x70], ebp
mov dword [esp + 0xa8], ebx
mov ebp, dword [esp + 0x98]
mov edi, dword [esp + 0x190]
lea ecx, [esp + 0x100]
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xfc]
mov eax, dword [eax + esi*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.005166a4
test eax, eax
jne 0x5361a0
mov edx, dword [ebp + esi*4 + 4]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edx*8]
test byte [eax], 2
je 0x5320c7
mov ebx, dword [esp + 0xa8]
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x5320b8
mov dword [esp + 0xa8], ebx
mov ecx, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], ecx
mov ecx, dword [esp + 0x100]
test ecx, ecx
je 0x53549f
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], 0x200
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004f3018
test eax, eax
je 0x536bff
inc esi
mov dword [esp + 0x94], 1
cmp dword [esp + 0x104], esi
jg 0x53206a
mov ebp, dword [esp + 0x70]
add dword [esp + 0x78], 9
jmp 0x530228
mov esi, dword [ebp + 0x14]
mov ebx, dword [esp + 0x7c]
sub ebx, dword [esp + 0x90]
sar ebx, 2
sub ebx, dword [ebp + 0x10]
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
test eax, eax
jle 0x535f61
test ebx, ebx
jne 0x534e51
mov eax, dword [0x67b764]
test eax, eax
je 0x5376b6
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
mov dword [eax], 1
inc dword [esp + 0x78]
mov ebp, esi
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
cmp dword [ebx + 0xc], 0x5dea98
je 0x5359e7
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
lea edx, [esp + 0x104]
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004df5d4
test eax, eax
jne 0x530368
mov edx, dword [esp + 0x104]
jmp 0x5359fe
mov eax, dword [0x67b764]
test eax, eax
je 0x537d96
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov edx, dword [esp + 0x7c]
sub edx, dword [esp + 0x90]
sar edx, 2
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], ebp
inc dword [esp + 0x78]
mov ebp, eax
jmp 0x530228
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 6]
shl eax, 0x10
movzx edx, byte [ebx + 5]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 7]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 8]
or eax, edx
mov dword [esp + 8], eax
movsx eax, byte [ebx + 1]
shl eax, 0x18
movzx edx, byte [ebx + 2]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e13c4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x536013
add dword [esp + 0x78], 9
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
jmp 0x5319dc
mov edi, dword [esp + 0x78]
movzx ebx, byte [edi + 2]
shl ebx, 0x10
movzx eax, byte [edi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [edi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [edi + 4]
or ebx, eax
lea eax, [ebx - 2]
mov edx, dword [esp + 0x7c]
mov edi, dword [edx]
mov esi, edx
sub esi, 4
mov edx, dword [edi]
dec edx
mov dword [edi], edx
test edx, edx
jle 0x53684a
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx - 4]
mov dword [esp + 0x10], edx
lea edx, [eax*4]
mov ecx, esi
sub ecx, edx
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov edi, dword [esp + 0x190]
mov dword [esp], edi
call fcn.004e0398
mov dword [esp + 0xf0], eax
test eax, eax
je 0x535ec7
add dword [esp + 0x78], 5
dec ebx
mov dword [esp + 0x7c], esi
jmp 0x530675
mov eax, dword [esp + 0x7c]
mov ebx, dword [eax]
mov esi, eax
sub esi, 4
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x5367bc
mov edx, dword [esp + 0x7c]
mov eax, dword [edx - 4]
mov dword [esp + 0xc], eax
mov eax, dword [edx - 8]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e03cc
mov dword [esp + 0xf0], eax
test eax, eax
je 0x535ec7
inc dword [esp + 0x78]
mov dword [esp + 0x7c], esi
jmp 0x5308dc
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
shl eax, 2
mov ebx, dword [esp + 0x7c]
sub ebx, eax
mov eax, dword [ebx]
mov dword [esp + 0xf0], eax
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
inc dword [eax]
add dword [esp + 0x78], 5
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov edx, dword [esp + 0x78]
movzx ebx, byte [edx + 2]
shl ebx, 0x10
movzx eax, byte [edx + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [edx + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [edx + 4]
or ebx, eax
lea eax, [ebx - 1]
mov edx, eax
neg edx
mov ecx, dword [esp + 0x7c]
lea edx, [ecx + edx*4 + 4]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
shl eax, 2
sub ecx, eax
mov eax, dword [ecx]
mov dword [esp + 4], eax
mov esi, dword [esp + 0x190]
mov dword [esp], esi
call fcn.004dfd44
mov dword [esp + 0xf0], eax
test eax, eax
je 0x530368
add dword [esp + 0x78], 5
jmp 0x530675
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov dword [esp + 0xa8], 0x20c
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi - 4]
lea edi, [esp + 0x100]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a9
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.004f49d8
test eax, eax
je 0x530368
mov dword [esp + 0x94], ebx
xor esi, esi
mov dword [esp + 0x98], 1
mov edi, 0xffffffff
mov ebx, 2
jmp 0x53268d
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx - 4]
mov dword [esp + 0xa8], 0x20c
test esi, esi
je 0x5324a3
mov edx, dword [esp + 0x7c]
mov ebx, dword [edx - 8]
lea ecx, [esp + 0x100]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a9
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov edi, dword [esp + 0x190]
mov dword [esp], edi
call fcn.004f49d8
test eax, eax
je 0x530368
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], 1
mov edi, 0xffffffff
mov ebx, 3
jmp 0x53268d
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov dword [esp + 0xa8], 0x20c
mov dword [esp + 0x98], 5
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx - 4]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov dword [esp + 0x100], eax
test byte [eax], 2
je 0x532632
mov edx, dword [esp + 0xa8]
nop
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x53261c
mov dword [esp + 0xa8], edx
mov dword [esp + 0x100], eax
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a9
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f4034
test eax, eax
je 0x530368
mov dword [esp + 0x94], 0
mov ebx, 2
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], ecx
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0xa8]
mov dword [esp + 0x18], edi
mov edx, dword [esp + 0x70]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov ecx, dword [esp + 0x94]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x100]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov esi, dword [esp + 0x190]
mov dword [esp], esi
call fcn.004f3018
mov dword [esp + 0xf0], eax
test eax, eax
je 0x5309ec
mov edx, dword [esp + 0x78]
add edx, dword [esp + 0x98]
cmp byte [edx], 3
je 0x534711
inc dword [eax]
mov dword [esp + 0x78], edx
mov dword [esp + 0x94], 1
jmp 0x530675
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov dword [esp + 0xa8], 0x20c
mov dword [esp + 0x98], 2
jmp 0x5325ed
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov ecx, dword [eax]
and ecx, 2
mov dword [esp + 0xa8], 0x20c
mov dword [esp + 0x98], 5
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
test ecx, ecx
je 0x5327a7
mov edx, dword [esp + 0xa8]
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x532798
mov dword [esp + 0xa8], edx
mov dword [esp + 0x100], 0
xor esi, esi
mov dword [esp + 0x94], 0
mov ebx, 1
jmp 0x53268d
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov ecx, dword [eax]
and ecx, 2
mov dword [esp + 0xa8], 0x20c
mov dword [esp + 0x98], 2
jmp 0x532783
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov dword [esp + 0xa8], 0x204
jmp 0x5324a3
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx - 4]
mov dword [esp + 0xa8], 0x204
jmp 0x532538
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 2
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x5328f1
cmp eax, 0x5dea58
je 0x5328f1
lea edi, [esp + 0x104]
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004ddb98
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov eax, dword [esp + 0x104]
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
jmp 0x5328fb
mov dword [esp + 0x128], 5
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
shl eax, 0x18
movzx edx, byte [ebx + 2]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
mov dword [esp + 0x12c], eax
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
jne 0x532861
xor eax, eax
mov edx, dword [ebx + 0x10]
test edx, edx
setne al
mov edi, dword [esp + eax*4 + 0x128]
add dword [esp + 0x78], edi
mov dword [esp + 0x88], 0
jmp 0x5319dc
mov dword [esp + 0x128], 2
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
mov dword [esp + 0x12c], eax
jmp 0x53284d
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
shl eax, 0x18
movzx edx, byte [ebx + 2]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
add ebx, eax
mov dword [esp + 0x78], ebx
jmp 0x530228
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
add ebx, eax
mov dword [esp + 0x78], ebx
jmp 0x530228
mov ebx, dword [esp + 0x78]
movzx ebx, byte [ebx + 1]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
mov dword [esp], eax
call fcn.004ddcb8
mov edi, eax
inc dword [eax]
mov dword [esp + 0xa8], 3
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x98], ebx
mov esi, dword [esp + 0x70]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + esi*8]
mov dword [esp + 0x100], eax
test byte [eax], 2
je 0x5329d7
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x5329c8
mov dword [esp + 0x100], eax
mov esi, dword [esp + 0x70]
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a4
mov dword [esp + 0xc], 0x200
mov edx, dword [esp + 0x98]
mov dword [esp + 8], edx
mov dword [esp + 4], 0
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f4034
mov esi, eax
test eax, eax
je 0x535eef
mov eax, dword [eax]
xor ecx, ecx
mov ebx, 1
test al, 0x33
jne 0x53474f
mov edx, dword [esi + 4]
test edx, edx
je 0x53474f
mov eax, dword [esp + 0x100]
test eax, eax
je 0x532a5f
test byte [eax], 0x30
jne 0x53474f
mov eax, dword [edx]
cmp eax, 1
jle 0x534db0
dec eax
mov dword [edx], eax
mov dword [esp], edx
call fcn.004dd19c
mov edx, eax
mov dword [esp + 0xf0], eax
inc dword [eax]
mov dword [esi + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 4], edx
mov esi, dword [esp + 0x190]
mov dword [esp], esi
call fcn.0052f950
mov dword [esp + 0x88], eax
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x536744
mov edi, dword [esp + 0x88]
test edi, edi
jne 0x530f40
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0x78]
add eax, edx
cmp byte [eax], 3
jne 0x5347db
mov esi, dword [esp + 0x78]
lea esi, [esi + edx + 1]
mov dword [esp + 0x78], esi
cmp ebx, 1
jne 0x5332c7
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
jmp 0x5319dc
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
mov dword [esp], eax
call fcn.004ddcb8
mov edi, eax
inc dword [eax]
mov al, byte [ebx]
mov dword [esp + 0xa8], 2
cmp al, 0x20
je 0x534c78
cmp al, 0x1b
je 0x534c78
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
lea eax, [esp + 0x100]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a4
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004f49d8
mov esi, eax
test eax, eax
je 0x535ed0
mov eax, dword [esi]
mov ecx, ebx
mov dword [esp + 0x98], 0
mov dword [esp + 0x70], 0xffffffff
mov ebx, 1
jmp 0x532a38
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 1]
movsx esi, byte [ebx + 2]
mov dword [esp + 0x98], esi
movzx edx, al
mov ebx, dword [esp + 0xa4]
lea edi, [ebx + edx*8]
mov edx, dword [edi]
test dl, 2
je 0x532bce
nop
mov edi, dword [edi + 4]
mov edx, dword [edi]
test dl, 2
jne 0x532bc4
and edx, 0x33
jne 0x534dbc
mov ebx, dword [edi + 4]
test ebx, ebx
je 0x534dbc
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x537553
cmp eax, 0x5dea1c
je 0x5375ce
cmp eax, 0x5dea44
je 0x53751b
test eax, eax
je 0x5373ee
mov eax, dword [ebx + 4]
test eax, eax
je 0x532c1c
mov eax, dword [ebx + 8]
test eax, eax
je 0x532c4a
lea esi, [esp + 0x104]
mov dword [esp + 0xc], esi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de904
test eax, eax
je 0x536ed6
mov eax, dword [ebx]
cmp eax, 1
jg 0x5362b4
mov dword [esp + 0xf0], ebx
mov esi, dword [0x67b764]
test esi, esi
je 0x53aa61
mov eax, dword [esi + 0x10]
mov dword [0x67b764], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov edi, dword [esp + 0x98]
mov dword [esi + 0x10], edi
mov dword [esi + 0xc], 0x5dea30
mov dword [esp + 8], esi
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052f950
mov dword [esp + 0x88], eax
mov eax, dword [esi]
dec eax
mov dword [esi], eax
test eax, eax
jle 0x5377c2
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x530f40
mov edx, 3
xor ebx, ebx
jmp 0x5347cc
mov ebx, dword [esp + 0x78]
movzx ebx, byte [ebx + 1]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov edi, dword [ebx]
sub ebx, 4
mov dword [esp + 0x7c], ebx
cmp al, 0x18
je 0x535b32
cmp al, 0x1a
je 0x534f76
mov dword [esp + 0xa8], 1
jmp 0x532b1c
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx - 4]
mov dword [esp + 0xa8], 0x200
jmp 0x532538
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov dword [esp + 0x98], 5
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx - 4]
mov eax, dword [esp + 0xa4]
lea ebx, [eax + edi*8]
mov dword [esp + 0x100], ebx
test byte [ebx], 2
je 0x532d9b
mov ebx, dword [ebx + 4]
test byte [ebx], 2
jne 0x532d8c
mov dword [esp + 0x100], ebx
mov eax, dword [ebx]
and eax, 0x21
dec eax
je 0x536065
mov eax, dword [esp + 0x100]
mov dword [esp + 0xa8], 0x200
jmp 0x532632
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov dword [esp + 0x98], 2
jmp 0x532d65
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x70], ebx
mov dword [esp + 0xa8], 0x200
jmp 0x5324a3
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov dword [esp + 0x98], 5
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov edx, dword [eax]
mov ecx, edx
mov ebx, eax
and ecx, 2
je 0x532e3a
mov ebx, dword [ebx + 4]
mov edx, dword [ebx]
test dl, 2
jne 0x532e30
and edx, 0x2b
jne 0x534a5f
mov esi, dword [ebx + 4]
test esi, esi
je 0x532e57
mov eax, dword [esi]
dec eax
mov dword [esi], eax
test eax, eax
jle 0x535f0c
mov esi, dword [esp + 0x7c]
mov eax, dword [esi]
mov dword [esp + 0xf0], eax
mov dword [ebx + 4], eax
mov edx, dword [esp + 0x78]
add edx, dword [esp + 0x98]
cmp byte [edx], 3
je 0x535b70
inc dword [eax]
mov dword [esp + 0x78], edx
jmp 0x530228
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov dword [esp + 0x98], 2
jmp 0x532e1b
mov ebx, dword [esp + 0x7c]
mov ecx, dword [ebx]
mov edi, dword [ebx - 4]
mov ebx, 2
lea esi, [esp + 0x100]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x6169a4
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], ecx
mov dword [esp + 4], edi
mov eax, dword [esp + 0x190]
mov dword [esp], eax
mov dword [esp + 0x3c], ecx
call fcn.004f49d8
mov esi, eax
test eax, eax
mov ecx, dword [esp + 0x3c]
je 0x530368
test byte [eax], 0x13
jne 0x532f21
mov eax, dword [eax + 4]
test eax, eax
je 0x532f21
mov edx, dword [esp + 0x100]
test edx, edx
je 0x531452
test byte [edx], 0x10
je 0x531452
mov dword [esp + 0x94], edi
mov dword [esp + 0x70], 1
mov edx, 0xffffffff
jmp 0x53060a
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 2]
shl edx, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edx, eax
movzx eax, byte [ebx + 4]
or edx, eax
mov dword [esp + 0x70], 5
mov ebx, dword [esp + 0x7c]
mov ecx, dword [ebx]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edx*8]
mov dword [esp + 0x100], eax
test byte [eax], 2
je 0x532f9b
mov edi, dword [esp + 0x70]
lea esi, [esi]
mov eax, dword [eax + 4]
test byte [eax], 2
jne 0x532f88
mov dword [esp + 0x70], edi
mov dword [esp + 0x100], eax
mov ebx, dword [eax]
and ebx, 0x11
dec ebx
je 0x535529
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x100]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x6169a4
mov dword [esp + 0xc], 0x200
mov dword [esp + 8], ecx
mov dword [esp + 4], 0
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x3c], ecx
call fcn.004f4034
mov esi, eax
test eax, eax
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x3c]
je 0x530368
mov dword [esp + 0x94], 0
mov ebx, 1
jmp 0x53060a
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 1]
mov dword [esp + 0x70], 2
jmp 0x532f65
mov ebx, dword [esp + 0x7c]
mov edi, dword [ebx]
xor ecx, ecx
mov ebx, 1
jmp 0x532ea9
mov ebx, dword [esp + 0x78]
movzx edx, byte [ebx + 2]
shl edx, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edx, eax
movzx eax, byte [ebx + 4]
or edx, eax
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + edx*8]
mov eax, dword [esi]
test al, 2
je 0x533085
nop
mov esi, dword [esi + 4]
mov eax, dword [esi]
test al, 2
jne 0x53307c
test al, 0x13
jne 0x533094
mov eax, dword [esi + 4]
test eax, eax
jne 0x532400
mov dword [esp + 0x100], 0
xor ecx, ecx
mov dword [esp + 0x94], 0
mov dword [esp + 0x70], 5
xor ebx, ebx
jmp 0x53060a
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov esi, dword [esp + 0xa0]
mov dword [esi + 0x10], ebx
lea edi, [esp + 0x100]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0053ad28
mov dword [esp + 0x88], eax
test eax, eax
jne 0x533138
mov eax, dword [esp + 0x100]
mov dword [esp + 0xf0], eax
inc dword [esp + 0x78]
mov dword [esp + 0x94], 1
jmp 0x530728
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], ecx
mov ecx, ebx
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
mov eax, dword [esp + 0x190]
call fcn.0052f414
mov dword [esp + 0x94], 1
jmp 0x530f40
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov esi, dword [esp + 0xa0]
mov dword [esi + 0x10], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0053ab10
mov dword [esp + 0x88], eax
test eax, eax
je 0x535c50
mov ebx, 1
mov dword [esp + 0x94], 1
mov eax, dword [esp + 0x88]
sub eax, 3
cmp eax, 1
ja 0x530f40
jmp 0x533950
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 2]
shl ebx, 0x10
movzx eax, byte [esi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [esi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [esi + 4]
or ebx, eax
mov esi, 5
mov eax, ebx
neg eax
mov edx, dword [esp + 0x7c]
lea edi, [edx + eax*4 + 4]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xb4]
mov dword [ecx + 0x1c], eax
mov edx, dword [esp + 0x190]
mov dword [edx + 0x284], ecx
test byte [edx + 0x100], 0x10
jne 0x5348f6
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.004e5f50
mov dword [esp + 0x88], eax
mov edx, dword [esp + 0x190]
test byte [edx + 0x100], 0x10
jne 0x5348cb
mov edi, dword [esp + 0x190]
mov eax, dword [edi + 0x284]
mov eax, dword [eax + 0x14]
mov dword [edi + 0x284], eax
mov ecx, dword [esp + 0x88]
test ecx, ecx
jne 0x534734
mov edi, dword [esp + 0x78]
add edi, esi
cmp byte [edi], 3
jne 0x53497d
mov eax, dword [esp + 0x78]
lea eax, [eax + esi + 1]
mov dword [esp + 0x78], eax
mov dword [esp + 0x94], 1
mov dword [esp + 0x84], 1
cmp ebx, 1
je 0x532ae8
cmp ebx, 2
je 0x534830
test ebx, ebx
je 0x530228
lea edi, [ebx - 2]
mov dword [esp + 0x98], edi
mov esi, 2
sub esi, ebx
xor ebx, ebx
mov dword [esp + 0xa8], ebp
mov ebp, dword [esp + 0x7c]
cmp ebx, esi
je 0x53330e
nop
mov edi, dword [ebp + ebx*4]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x53332a
dec ebx
cmp ebx, esi
jne 0x5332fc
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0x98]
neg esi
mov eax, dword [esp + 0x7c]
lea ebx, [eax + esi*4]
jmp 0x534834
mov eax, dword [edi + 0xc]
test eax, eax
je 0x534852
mov eax, dword [eax + 4]
test eax, eax
je 0x534852
mov dword [esp], edi
call fcn.004dd020
dec ebx
jmp 0x53330a
mov edi, dword [esp + 0x78]
movzx ebx, byte [edi + 1]
mov esi, 2
jmp 0x5331dc
mov ebx, dword [esp + 0x78]
movzx ebx, byte [ebx + 1]
mov dword [esp + 0x70], ebx
mov eax, ebx
sub eax, 2
neg eax
mov ebx, dword [esp + 0x7c]
lea esi, [ebx + eax*4]
cmp ebx, esi
jb 0x5333dc
mov ebx, esi
xor edi, edi
mov edx, dword [esp + 0x7c]
jmp 0x5333a1
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
add ebx, 4
add edi, eax
js 0x535669
cmp edx, ebx
jb 0x5333d4
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x533388
lea ecx, [esp + 0x104]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0x50], edx
call fcn.004dd4d4
test eax, eax
mov edx, dword [esp + 0x50]
jne 0x53802d
add ebx, 4
cmp edx, ebx
jae 0x5333a1
test edi, edi
jne 0x53567d
add dword [esp + 0x78], 2
mov ebx, dword [esp + 0x70]
dec ebx
jmp 0x5332be
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov dword [esp + 0xf0], eax
jmp 0x5313ab
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
mov ebx, dword [esp + 0x194]
mov edx, dword [ebx + 0x4c]
mov eax, dword [edx + eax*4]
jmp 0x532400
mov ebx, dword [esp + 0x7c]
cmp dword [esp + 0x90], ebx
jae 0x530b7b
mov eax, dword [ebx]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
jmp 0x530f40
mov ebx, dword [esp + 0x7c]
mov edi, dword [ebx]
xor edx, edx
mov ebx, 1
jmp 0x5313ce
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov dword [esp + 0xa8], 0x204
mov dword [esp + 0x98], 5
jmp 0x5325ed
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov dword [esp + 0xa8], 0x204
mov dword [esp + 0x98], 2
jmp 0x5325ed
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 2]
shl edi, 0x10
movzx eax, byte [ebx + 1]
shl eax, 0x18
or edi, eax
movzx eax, byte [ebx + 3]
shl eax, 8
or edi, eax
movzx eax, byte [ebx + 4]
or edi, eax
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov ecx, dword [eax]
and ecx, 2
mov dword [esp + 0xa8], 0x204
mov dword [esp + 0x98], 5
jmp 0x532783
mov ebx, dword [esp + 0x78]
movzx edi, byte [ebx + 1]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + edi*8]
mov ecx, dword [eax]
and ecx, 2
mov dword [esp + 0xa8], 0x204
mov dword [esp + 0x98], 2
jmp 0x532783
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
cmp dword [eax + 0xc], 0x5dea98
je 0x535ba0
lea esi, [esp + 0x104]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004df7fc
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov eax, dword [0x67b764]
test eax, eax
je 0x537400
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov edx, dword [esp + 0x104]
mov dword [eax + 0x10], edx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
jmp 0x530728
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov esi, dword [esi - 4]
cmp dword [esi + 0xc], 0x5dea98
je 0x535bb2
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004df5d4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x533677
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea98
je 0x53366c
cmp eax, 0x5dea30
je 0x535997
lea ecx, [esp + 0x104]
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xf8]
dec eax
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004fe104
test eax, eax
je 0x5359a1
mov dword [esp + 0x88], 0
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004dfee4
mov dword [esp + 0xf0], eax
test eax, eax
je 0x530368
inc dword [esp + 0x78]
jmp 0x5308dc
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 2]
shl ebx, 0x10
movzx eax, byte [esi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [esi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [esi + 4]
or ebx, eax
mov eax, ebx
neg eax
mov edi, dword [esp + 0x7c]
lea eax, [edi + eax*4 + 4]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004df428
mov dword [esp + 0xf0], eax
add esi, 5
mov dword [esp + 0x78], esi
inc dword [eax]
jmp 0x530675
mov ebx, dword [esp + 0x78]
movsx esi, byte [ebx + 1]
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov edi, dword [edi - 4]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5deae4
je 0x536316
cmp dword [edi + 0xc], 0x5deae4
je 0x536316
cmp eax, 0x5deac4
je 0x536b39
mov edx, dword [edi + 4]
test edx, edx
je 0x537da5
mov eax, dword [ebx + 4]
test eax, eax
je 0x537db4
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004fd094
jmp 0x5316d4
mov ebx, dword [esp + 0x194]
mov ecx, dword [ebx + 0x54]
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
mov eax, dword [ecx + eax*8 + 4]
mov dword [esp + 0xc0], eax
mov esi, dword [eax]
mov dword [esp + 0xa8], esi
mov eax, dword [eax + 8]
mov edx, dword [esp + 0xa4]
mov ebx, dword [edx + eax*8 + 4]
mov ecx, dword [ebx + 0x10]
inc ecx
mov dword [esp + 0x98], ecx
mov eax, dword [ebx + 4]
test eax, eax
je 0x5337d0
cmp eax, dword [0x5dea6c]
je 0x5337c9
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 4], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x5337e3
mov eax, dword [eax + 4]
test eax, eax
je 0x5337e3
mov dword [esp], ebx
call eax
mov esi, dword [esp + 0x98]
mov dword [ebx + 0x10], esi
mov dword [ebx + 0xc], 0x5dea30
mov edi, dword [esp + 0xc0]
mov eax, dword [edi + 4]
mov ebx, dword [esp + 0xa8]
test ebx, ebx
jle 0x534e75
mov edx, dword [esp + 0xa4]
lea ebx, [edx + eax*8]
xor edi, edi
mov dword [esp + 0x70], 0
mov dword [esp + 0x88], ebp
mov ebp, dword [esp + 0xc0]
jmp 0x533885
lea ecx, [esp + 0x104]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.004df7fc
test eax, eax
jne 0x534a6f
mov eax, dword [esp + 0x104]
mov edx, dword [esp + 0x98]
imul edx, esi
cmp edx, eax
jge 0x533877
mov dword [esp + 0x70], 1
inc edi
cmp edi, dword [esp + 0xa8]
je 0x534a82
mov eax, dword [ebp + edi*4 + 0xc]
mov esi, dword [eax]
mov eax, dword [ebx + edi*8 + 4]
cmp dword [eax + 0xc], 0x5dea98
jne 0x533834
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x533861
mov ebx, dword [esp + 0x194]
mov ecx, dword [ebx + 0x54]
mov ebx, dword [esp + 0x78]
movzx eax, byte [ebx + 2]
shl eax, 0x10
movzx edx, byte [ebx + 1]
shl edx, 0x18
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
mov eax, dword [ecx + eax*8 + 4]
mov eax, dword [eax + 8]
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + eax*8]
mov ebx, dword [esi + 4]
test ebx, ebx
je 0x536693
mov eax, dword [ebx + 4]
test eax, eax
je 0x53390e
cmp eax, dword [0x5dea6c]
je 0x533907
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 4], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x533921
mov eax, dword [eax + 4]
test eax, eax
je 0x533921
mov dword [esp], ebx
call eax
mov dword [ebx + 0x10], 0xffffffff
mov dword [ebx + 0xc], 0x5dea30
mov ebx, dword [esp + 0x194]
mov ecx, dword [ebx + 0x54]
add dword [esp + 0x78], 5
jmp 0x533762
mov dword [esp + 0x88], 4
xor ebx, ebx
mov ecx, dword [esp + 0x194]
xor edx, edx
mov eax, dword [esp + 0x78]
call fcn.0052f120
mov esi, eax
test eax, eax
je 0x530b80
cmp dword [eax], 1
je 0x53043e
mov eax, ebx
neg eax
mov edi, dword [esp + 0x7c]
lea edi, [edi + eax*4]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x98], esi
mov esi, edi
test ebx, ebx
je 0x5339a5
lea esi, [esi]
mov edi, dword [esi + ebx*4]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x5339e4
dec ebx
test ebx, ebx
jne 0x533994
mov esi, dword [esp + 0x98]
cmp dword [esp + 0x88], 3
je 0x5359c4
mov eax, dword [esi + 0x14]
cmp eax, 0xffffffff
je 0x534ff4
mov ebx, dword [esp + 0x194]
add eax, dword [ebx + 0x48]
mov dword [esp + 0x78], eax
mov dword [esp + 0x88], 0
jmp 0x530228
mov eax, dword [edi + 0xc]
test eax, eax
je 0x534928
mov eax, dword [eax + 4]
test eax, eax
je 0x534928
mov dword [esp], edi
call fcn.004dd020
dec ebx
jmp 0x5339a1
mov dword [esp + 0x88], 3
jmp 0x53394e
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi - 4]
mov edi, dword [esi]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x53687c
cmp eax, 0x5dea1c
je 0x536bc4
cmp eax, 0x5dea44
je 0x5352db
test eax, eax
je 0x536c55
mov esi, dword [ebx + 4]
test esi, esi
je 0x533a5c
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x533b13
lea eax, [esp + 0xf8]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xfc]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne case.0x530557.75
mov eax, dword [esp + 0xf8]
cmp eax, 5
je 0x536369
cmp ebx, edi
je 0x537c8a
mov eax, dword [edi + 0xc]
cmp eax, 0x5dea30
je 0x537d2b
cmp eax, 0x5dea1c
je 0x537d0c
cmp eax, 0x5dea44
je 0x537c2e
test eax, eax
je 0x53aa87
mov eax, dword [edi + 4]
test eax, eax
je 0x533adc
mov eax, dword [edi + 8]
test eax, eax
je case.0x530557.75
lea eax, [esp + 0x104]
mov dword [esp + 0xc], eax
lea edx, [esp + 0x100]
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de904
test eax, eax
je 0x53aa7b
mov ebx, dword [esp + 0x7c]
mov edi, dword [ebx]
mov ebx, dword [ebx - 4]
cmp ebx, edi
je 0x535cc7
mov eax, dword [ebx + 0xc]
cmp eax, 0x5deac4
je 0x536254
cmp eax, 0x5deae4
je 0x5361db
mov esi, dword [ebx + 4]
test esi, esi
je 0x537ebe
mov eax, dword [ebx + 8]
mov dword [esp + 0xf8], eax
mov eax, dword [edi + 4]
test eax, eax
je 0x537ed8
mov edx, dword [edi + 8]
mov dword [esp + 0x104], edx
mov ecx, dword [esp + 0xf8]
cmp edx, ecx
jle 0x533b6b
mov edx, ecx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.0050c2f0
test eax, eax
jne 0x533b8d
mov eax, dword [esp + 0xf8]
sub eax, dword [esp + 0x104]
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
cmp dl, 0x4b
je case.default.0x534d07
sub edx, 0x2d
cmp dl, 5
jbe 0x534d04
test eax, eax
jns 0x535081
mov eax, dword [0x67b764]
test eax, eax
je 0x53aa97
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0xffffffff
mov dword [eax + 0xc], 0x5dea30
mov edx, 1
mov dword [eax], edx
inc dword [esp + 0x78]
jmp 0x5308dc
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov ecx, dword [edi - 4]
mov dword [esp + 0x70], ecx
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea30
je 0x536606
cmp eax, 0x5dea1c
je 0x5365e8
mov ecx, dword [esp + 0x70]
cmp eax, 0x5dea44
je 0x53529f
test eax, eax
je 0x5354ea
mov eax, dword [ecx + 4]
test eax, eax
je 0x533c47
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 8]
test eax, eax
je 0x5354f5
lea eax, [esp + 0xf8]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xfc]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x5354f5
mov eax, dword [esp + 0xf8]
cmp eax, 5
je 0x5354f5
cmp eax, 4
je 0x5354f5
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x53740f
cmp eax, 0x5dea1c
je 0x537466
cmp eax, 0x5dea44
je 0x53742e
test eax, eax
je 0x535f2f
mov eax, dword [ebx + 4]
test eax, eax
je 0x533cd0
mov eax, dword [ebx + 8]
test eax, eax
je 0x535f3a
lea esi, [esp + 0x104]
mov dword [esp + 0xc], esi
lea edi, [esp + 0x100]
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x535f3a
mov eax, dword [esp + 0x104]
cmp eax, 5
je 0x535f3a
cmp eax, 4
je 0x535f3a
mov edx, dword [esp + 0xf8]
cmp edx, 3
je 0x536c68
cmp eax, 3
je 0x536c68
cmp edx, 2
je 0x5378a3
cmp eax, 2
je 0x5378a3
mov eax, dword [esp + 0xfc]
mov edx, dword [eax]
mov eax, dword [esp + 0x100]
mov ebx, dword [eax]
mov esi, dword [esp + 0x78]
mov al, byte [esi]
cmp al, 0x2b
je 0x5398be
cmp al, 0x2c
je 0x53a336
cmp al, 0x2a
je 0x53a32f
xor ebx, ebx
mov ecx, dword [esp + 0x70]
cmp dword [ecx], 1
jle 0x53aaa6
mov eax, dword [0x67b764]
test eax, eax
jne 0x533d94
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov esi, dword [edi - 4]
mov eax, dword [esi + 0xc]
cmp eax, 0x5dea30
je 0x534eb8
cmp eax, 0x5dea58
je 0x534eb8
lea eax, [esp + 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], 0
call fcn.004ddb98
mov dword [esp + 0x88], eax
test eax, eax
jne 0x536114
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x5360fe
cmp eax, 0x5dea58
je 0x5360fe
lea esi, [esp + 0x104]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004ddb98
mov dword [esp + 0x88], eax
test eax, eax
jne 0x5361a9
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x28
je 0x535ff1
mov ecx, dword [esp + 0xf8]
test ecx, ecx
jne 0x536000
xor eax, eax
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
jmp 0x5308dc
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 1]
shl eax, 0x18
movzx edx, byte [ebx + 2]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebx + 4]
or eax, edx
movzx edx, byte [ebx + 3]
shl edx, 8
or eax, edx
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 5
jmp 0x53284d
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0xbc], ebx
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx - 4]
mov dword [esp + 0x88], ebx
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x536728
cmp eax, 0x5dea1c
je 0x536bde
mov ecx, dword [esp + 0x88]
cmp eax, 0x5dea44
je 0x535313
test eax, eax
je 0x5357c3
mov esi, dword [ecx + 4]
test esi, esi
je 0x533f3a
mov ecx, dword [esp + 0x88]
mov ebx, dword [ecx + 8]
test ebx, ebx
je 0x5357ce
lea eax, [esp + 0xf8]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xfc]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x5357ce
mov eax, dword [esp + 0xf8]
cmp eax, 5
je 0x5357ce
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea30
je 0x537ae4
cmp eax, 0x5dea1c
je 0x537d70
mov ecx, dword [esp + 0xbc]
cmp eax, 0x5dea44
je 0x537bbf
test eax, eax
je 0x535c2b
mov edx, dword [ecx + 4]
test edx, edx
je 0x533fd2
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 8]
test eax, eax
je 0x535c36
lea ebx, [esp + 0x104]
mov dword [esp + 0xc], ebx
lea esi, [esp + 0x100]
mov dword [esp + 8], esi
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x535c36
mov esi, dword [esp + 0x104]
cmp esi, 5
je 0x535c36
mov eax, dword [esp + 0xf8]
cmp eax, 4
je 0x536a4e
cmp esi, 4
je 0x536a4e
mov edi, dword [esp + 0x78]
mov bl, byte [edi]
cmp bl, 0x37
je 0x537980
cmp bl, 0x63
jne 0x537a02
cmp esi, 1
je 0x538aba
cmp esi, 2
je 0x538aa1
cmp esi, 3
je 0x538a26
dec esi
je 0x538a1b
xor ebx, ebx
xor edi, edi
xor ecx, ecx
cmp eax, 1
je 0x539073
test edi, edi
je 0x538ae3
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov edi, dword [esi - 4]
mov eax, dword [edi + 0xc]
cmp eax, 0x5dea30
je 0x53696b
cmp eax, 0x5dea1c
je 0x536951
cmp eax, 0x5dea44
je 0x535267
test eax, eax
je 0x5354ca
mov eax, dword [edi + 4]
test eax, eax
je 0x5340e7
mov eax, dword [edi + 8]
test eax, eax
je 0x5354d5
lea eax, [esp + 0xf8]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xfc]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x5354d5
mov eax, dword [esp + 0xf8]
cmp eax, 4
je 0x5354d5
cmp eax, 5
je 0x5354d5
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x537c0f
cmp eax, 0x5dea1c
je 0x537848
cmp eax, 0x5dea44
je 0x537810
test eax, eax
je 0x537800
mov esi, dword [ebx + 4]
test esi, esi
je 0x53416c
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x5309c8
lea esi, [esp + 0x104]
mov dword [esp + 0xc], esi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x5309c8
mov eax, dword [esp + 0x104]
cmp eax, 4
je 0x5309c8
cmp eax, 5
je 0x5309c8
mov esi, dword [esp + 0x78]
cmp byte [esi], 0x39
je 0x536d69
cmp eax, 2
je 0x5371f5
cmp eax, 3
je 0x53a65a
dec eax
je 0x53a6ae
mov eax, dword [esp + 0xf8]
cmp eax, 1
je 0x53a698
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x33
je 0x53a6bf
cmp dword [esp + 0x104], 1
je 0x53a527
cmp eax, 2
je 0x5397b4
cmp eax, 3
je 0x539751
dec eax
je 0x53a4b0
mov eax, dword [0x67b764]
test eax, eax
jne 0x534230
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0xffffffff
mov dword [eax + 0xc], 0x5dea30
mov edx, 1
mov dword [eax], edx
inc dword [esp + 0x78]
jmp 0x5308d0
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 1]
mov eax, ebx
neg eax
mov edi, dword [esp + 0x7c]
lea esi, [edi + eax*4 + 4]
mov edi, dword [esi]
mov dword [esp + 4], 0x11
mov dword [esp], str.::tcl::mathfunc::
call fcn.004eaf6c
mov dword [esp + 4], edi
mov dword [esp], eax
mov dword [esp + 0x50], eax
call fcn.004eba00
mov edx, dword [edi]
dec edx
mov dword [edi], edx
test edx, edx
mov eax, dword [esp + 0x50]
jle 0x5369ed
mov dword [esi], eax
inc dword [eax]
mov esi, 2
jmp 0x5331dc
mov ebx, dword [esp + 0x78]
movzx ebx, byte [ebx + 1]
mov byte [esp + 0x6f], bl
cmp byte [esp + 0x6f], 0x19
ja 0x5360e9
mov dword [esp + 4], 0x11
mov dword [esp], str.::tcl::mathfunc::
call fcn.004eaf6c
mov esi, eax
mov dword [esp + 8], 0xffffffff
mov eax, dword [ebx*8 + 0x6170c0]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004eb900
mov ebx, dword [ebx*8 + 0x6170c4]
test ebx, ebx
je 0x534e3c
cmp ebx, 1
je 0x5366f8
mov ecx, dword [esp + 0x7c]
mov edi, dword [ecx]
mov eax, dword [ecx - 4]
mov dword [ecx - 4], esi
inc dword [esi]
mov dword [ecx], eax
inc dword [eax]
mov esi, ecx
add esi, 4
mov dword [ecx + 4], edi
inc dword [edi]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x537e2f
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jle 0x5377b1
mov dword [esp + 0x7c], esi
inc ebx
mov esi, 2
jmp 0x5331dc
mov edi, dword [esp + 0x7c]
mov ebx, dword [edi]
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea30
je 0x534ece
cmp eax, 0x5dea58
je 0x534ece
lea eax, [esp + 0x104]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004ddb98
mov dword [esp + 0x88], eax
test eax, eax
jne 0x533116
mov eax, dword [esp + 0x104]
cmp eax, 1
sbb eax, eax
and eax, 4
mov ebx, dword [esp + 0xd0]
mov eax, dword [ebx + eax]
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
jmp 0x530728
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
mov ebx, dword [ebx - 4]
cmp dword [ebx + 0xc], 0x5deac4
je 0x536772
mov dword [esp], ebx
call fcn.004eb070
mov dword [esp + 0x104], eax
xor edi, edi
cmp dword [esi + 0xc], 0x5dea30
je 0x535988
lea eax, [esp + 0xf8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x104]
dec eax
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004fe104
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
mov edx, dword [esp + 0xf8]
test edx, edx
js 0x535944
mov ecx, dword [esp + 0x104]
cmp ecx, edx
jle 0x535944
cmp dword [ebx + 0xc], 0x5deac4
je 0x53945e
mov eax, dword [ebx + 4]
test eax, eax
je 0x534491
cmp ecx, dword [ebx + 8]
je 0x53a9f8
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.004eb110
lea ebx, [esp + 0x160]
mov dword [esp + 4], ebx
movzx eax, ax
mov dword [esp], eax
call fcn.0050bb48
mov dword [esp + 0x104], eax
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004eaf6c
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
mov dword [eax], edx
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
jmp 0x5308dc
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
cmp dword [eax + 0xc], 0x5deac4
je 0x536c3d
mov dword [esp], eax
call fcn.004eb070
mov dword [esp + 0x104], eax
mov eax, dword [0x67b764]
test eax, eax
je 0x537e20
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov edx, dword [esp + 0x104]
mov dword [eax + 0x10], edx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x530728
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
mov edx, dword [ebx - 4]
cmp edx, esi
je 0x5368f8
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x537e06
mov eax, dword [edx + 8]
mov dword [esp + 0xf8], eax
mov eax, dword [esi + 4]
test eax, eax
je 0x537ef7
mov edx, dword [esi + 8]
mov dword [esp + 0x104], edx
cmp dword [esp + 0xf8], edx
je 0x534edd
mov ebx, dword [esp + 0x78]
xor eax, eax
cmp byte [ebx], 0x4a
sete al
mov edx, dword [esp + 0x78]
inc edx
mov ebx, dword [esp + 0x78]
mov cl, byte [ebx + 1]
cmp cl, 0x25
je 0x535bdc
ja 0x53589b
cmp cl, 0x24
je 0x5361bc
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
mov dword [esp + 0x78], edx
jmp 0x5308dc
mov eax, dword [0x67b764]
test eax, eax
je 0x537e68
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov esi, dword [esp + 0x88]
mov dword [eax + 0x10], esi
mov dword [eax + 0xc], 0x5dea30
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
mov dword [eax], 1
inc dword [esp + 0x78]
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0ce4
mov dword [esp + 0xf0], eax
mov edx, dword [0x67b764]
test edx, edx
je 0x537e77
mov ecx, dword [edx + 0x10]
mov dword [0x67b764], ecx
mov ecx, dword [0x5dea6c]
mov dword [edx + 4], ecx
mov dword [edx + 8], 0
mov dword [edx + 0xc], 0
mov dword [edx], 1
mov ebx, dword [esp + 0x190]
mov dword [ebx + 0x1e4], edx
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 4], eax
inc dword [esp + 0x78]
add ebx, 4
mov dword [esp + 0x7c], ebx
jmp 0x530228
sub dword [esp + 0x80], 4
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e10c4
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
mov dword [esp + 0x94], 1
jmp 0x530228
mov eax, dword [esp + 0x7c]
sub eax, dword [esp + 0x90]
sar eax, 2
mov ebx, dword [esp + 0x80]
mov dword [ebx + 4], eax
add dword [esp + 0x78], 5
add ebx, 4
mov dword [esp + 0x80], ebx
jmp 0x530228
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0x98]
lea eax, [eax + edi + 1]
mov dword [esp + 0x78], eax
mov dword [esp + 0x94], 1
jmp 0x5332be
mov dword [esp + 0x94], 1
mov dword [esp + 0x84], 1
jmp 0x53319a
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], 0x200
mov dword [esp + 0x14], edi
mov edx, dword [esp + 0x98]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004f36bc
mov dword [esp + 0xf0], eax
mov edx, dword [edi]
dec edx
mov dword [edi], edx
test edx, edx
jle 0x535cb3
test eax, eax
je 0x5309ec
mov edx, dword [esp + 0xa8]
mov dword [esp + 0x94], 1
mov eax, dword [esp + 0x78]
add eax, edx
cmp byte [eax], 3
je 0x532ad3
mov edx, dword [esp + 0xf0]
inc dword [edx]
mov dword [esp + 0x78], eax
jmp 0x530675
cmp cl, 0x26
je 0x536f6e
cmp cl, 0x27
jne 0x5345c4
test eax, eax
jne 0x5373d8
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
shl eax, 0x18
movzx ecx, byte [ebx + 3]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [ebx + 5]
or eax, ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or eax, ecx
add edx, eax
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0x7c]
mov esi, dword [ebx]
lea edx, [ebx - 4]
mov dword [esp + 0x7c], edx
mov eax, dword [esi]
dec eax
mov dword [esi], eax
test eax, eax
jle 0x53495a
mov ebx, dword [ebx - 4]
jmp 0x5319dc
mov eax, dword [edi + 4]
test eax, eax
je 0x534869
cmp eax, dword [0x5dea6c]
je 0x534869
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
dec ebx
jmp 0x53330a
mov eax, dword [ebx + 4]
test eax, eax
je 0x53489b
cmp eax, dword [0x5dea6c]
je 0x53489b
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x530228
mov eax, dword [ebx + 0x100]
mov dword [esp + 0x88], 1
jmp 0x530388
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x194]
sub eax, dword [ecx + 0x48]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.004e6b94
jmp 0x533268
mov ecx, dword [esp + 0x194]
sub eax, dword [ecx + 0x48]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.004e6ab4
jmp 0x533210
mov eax, dword [edi + 4]
test eax, eax
je 0x53493f
cmp eax, dword [0x5dea6c]
je 0x53493f
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
dec ebx
jmp 0x5339a1
mov eax, dword [esi + 0xc]
test eax, eax
je 0x5357e8
mov eax, dword [eax + 4]
test eax, eax
je 0x5357e8
mov dword [esp], esi
call fcn.004dd020
jmp 0x53484a
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004e0ce4
mov dword [esp + 0xf0], eax
mov eax, dword [0x67b764]
test eax, eax
je 0x537e8e
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax], 1
mov ecx, dword [esp + 0x190]
mov dword [ecx + 0x1e4], eax
mov dword [esp + 0x78], edi
mov dword [esp + 0x94], 1
mov dword [esp + 0x84], 1
jmp 0x530675
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f4694
mov dword [esp + 0x88], eax
test eax, eax
jne 0x530f40
jmp 0x53182a
mov ebx, dword [esp + 0xd4]
mov esi, dword [ebx + 0xe4]
mov ebx, dword [esp + 0x194]
cmp dword [ebx + 0xc], esi
jne 0x530d51
add dword [esp + 0x78], 9
mov dword [esp + 0x94], 0
jmp 0x530228
mov dword [esp + 0xa8], 0x200
jmp 0x532783
mov ebp, dword [esp + 0x88]
mov dword [esp + 0x88], eax
jmp 0x530f40
mov ebp, dword [esp + 0x88]
mov ecx, dword [esp + 0x70]
test ecx, ecx
je 0x534e6a
mov edx, dword [esp + 0xc0]
mov eax, dword [edx + 4]
mov ebx, dword [esp + 0xa4]
lea eax, [ebx + eax*8]
mov dword [esp + 0xd8], eax
mov dword [esp + 0xc4], 0
mov dword [esp + 0xdc], ebp
mov edi, dword [esp + 0xc4]
mov edx, dword [esp + 0xc0]
mov esi, dword [edx + edi*4 + 0xc]
mov ebx, dword [esi]
mov ecx, dword [esp + 0xd8]
mov eax, dword [ecx + edi*8 + 4]
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.004df548
mov dword [esp + 0xbc], eax
cmp dword [eax + 0xc], 0x5dea98
je 0x53560e
lea ebp, [esp + 0x100]
mov dword [esp + 0xc], ebp
lea eax, [esp + 0x104]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.004df5d4
mov edi, dword [esp + 0x98]
imul edi, ebx
test ebx, ebx
jle 0x534c0b
lea ebp, [edi*4]
add ebx, edi
mov dword [esp + 0x70], ebx
mov eax, edi
neg eax
lea edx, [esi + eax*4]
mov dword [esp + 0x88], edx
nop
cmp dword [esp + 0x104], edi
jg 0x535364
mov esi, dword [0x67b764]
test esi, esi
je 0x535429
mov eax, dword [esi + 0x10]
mov dword [0x67b764], eax
mov dword [esi], 0
mov eax, dword [0x5dea6c]
mov dword [esi + 4], eax
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov ebx, dword [esp + 0x88]
mov ecx, dword [ebx + ebp + 4]
mov eax, dword [esp + 0xa4]
lea ebx, [eax + ecx*8]
mov eax, dword [ebx]
test al, 2
je 0x534bd8
mov edx, dword [esp + 0x88]
lea esi, [esi]
mov ebx, dword [ebx + 4]
mov eax, dword [ebx]
test al, 2
jne 0x534bc8
mov dword [esp + 0x88], edx
test al, 0x2b
jne 0x535374
mov eax, dword [ebx + 4]
cmp esi, eax
je 0x534bfd
test eax, eax
je 0x534bf8
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
test ecx, ecx
jle 0x5353d5
mov dword [ebx + 4], esi
inc dword [esi]
inc edi
add ebp, 4
cmp edi, dword [esp + 0x70]
jne 0x534b64
mov eax, dword [esp + 0xbc]
mov eax, dword [eax]
mov dword [esp + 0x60], eax
dec eax
mov edx, dword [esp + 0xbc]
mov dword [edx], eax
test eax, eax
jle 0x5358e7
inc dword [esp + 0xc4]
mov edx, dword [esp + 0xa8]
cmp dword [esp + 0xc4], edx
jne 0x534ac2
mov ebp, dword [esp + 0xdc]
mov edx, dword [esp + 0x78]
add edx, 5
mov ebx, dword [esp + 0x78]
cmp byte [ebx + 5], 0x26
mov dword [esp + 0x88], 0
je 0x53aa71
mov eax, 5
jmp 0x534ead
mov ebx, dword [esp + 0x7c]
mov ebx, dword [ebx]
mov dword [esp + 0x98], ebx
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi - 4]
lea eax, [esp + 0x100]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x6169a4
mov dword [esp + 0xc], 0x200
mov edx, dword [esp + 0x98]
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004f49d8
mov esi, eax
test eax, eax
je 0x535ed0
mov eax, dword [esp + 0x98]
test eax, eax
je 0x532b7a
mov eax, dword [esi]
mov ecx, ebx
mov dword [esp + 0x70], 0xffffffff
mov ebx, 2
jmp 0x532a38
movzx edx, dl
jmp dword [edx*4 + 0x616df0]
mov edx, dword [ebx + 4]
test edx, edx
je 0x534d20
mov eax, dword [ebx + 8]
test eax, eax
je 0x5309c8
lea edi, [esp + 0x104]
mov dword [esp + 0xc], edi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de904
test eax, eax
jne 0x5309c8
mov eax, dword [esp + 0x104]
cmp eax, 5
je 0x5309c8
cmp eax, 4
je 0x5309c8
cmp eax, 1
je 0x536548
cmp eax, 2
jne 0x5364ca
mov eax, dword [esp + 0x100]
mov edx, dword [eax]
mov eax, dword [eax + 4]
not edx
not eax
cmp dword [ebx], 1
jle 0x536e5c
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x536523
mov dword [esp + 0xf0], edx
jmp 0x532a83
mov edi, dword [0x67b764]
test edi, edi
je 0x5375e8
mov dword [esp + 0x70], eax
mov eax, dword [edi + 0x10]
mov dword [0x67b764], eax
mov dword [edi + 4], 0
mov esi, dword [esp + 0x98]
mov dword [edi + 0x10], esi
mov dword [edi + 0xc], 0x5dea30
mov dword [edi], 1
mov dword [esp + 0xa8], 3
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0xa4]
lea esi, [ebx + edx*8]
mov eax, dword [esi]
test al, 2
je 0x534e1d
nop
mov esi, dword [esi + 4]
mov eax, dword [esi]
test al, 2
jne 0x534e14
mov dword [esp + 0x100], 0
mov dword [esp + 0x98], 0
xor ecx, ecx
xor ebx, ebx
jmp 0x532a38
mov edi, dword [esp + 0x7c]
mov dword [edi + 4], esi
inc dword [esi]
add edi, 4
mov dword [esp + 0x7c], edi
jmp 0x53435f
mov ebp, esi
mov esi, 1
jmp 0x5331dc
or dl, 0x80
mov dword [eax], edx
inc dword [eax + 8]
jmp 0x5317a3
mov dword [esp + 0x88], 0
mov edx, dword [esp + 0x78]
add edx, 5
mov ebx, dword [esp + 0x78]
cmp byte [ebx + 5], 0x26
je 0x53aa54
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 6]
shl eax, 0x18
movzx ecx, byte [ebx + 7]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [ebx + 9]
or eax, ecx
movzx ecx, byte [ebx + 8]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esp + 0x78], eax
jmp 0x530228
xor eax, eax
mov edi, dword [esi + 0x10]
test edi, edi
setne al
mov dword [esp + 0xf8], eax
jmp 0x533e10
xor eax, eax
mov ebx, dword [ebx + 0x10]
test ebx, ebx
setne al
jmp 0x5343ba
mov edx, dword [esp + 0x78]
cmp byte [edx], 0x4a
mov dword [esp + 4], eax
mov dword [esp], ebx
je 0x537601
call sub.msvcrt.dll_strcmp
test eax, eax
sete al
movzx eax, al
jmp 0x5345a0
mov dword [esp], edi
call fcn.004dd19c
mov edi, eax
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x7c]
mov eax, dword [edx - 4]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.005166a4
mov dword [esp + 0x88], eax
test eax, eax
jne 0x535639
mov dword [esp + 0x70], 1
jmp 0x53083b
mov dword [esp], edi
mov dword [esp + 0x50], edx
call fcn.004dd19c
mov edi, eax
mov dword [esp + 0x98], 1
mov edx, dword [esp + 0x50]
jmp 0x5311bc
mov dword [esp + 0xa8], 2
jmp 0x5329a1
mov eax, dword [esp + 0x104]
test eax, eax
jle 0x534fed
xor ebx, ebx
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp], 0
call fcn.004df780
mov edx, dword [esp + 0x100]
test edx, edx
je 0x535b8f
mov eax, dword [edx + 4]
test eax, eax
je 0x5366d9
mov edx, dword [edx + 8]
mov dword [esp + 0xf8], edx
cmp dword [esp + 0xf4], edx
je 0x53558a
inc ebx
cmp dword [esp + 0x104], ebx
jg 0x534f93
xor eax, eax
jmp 0x5355b5
mov ebx, dword [esp + 0x190]
mov eax, dword [ebx + 0x100]
mov dword [esp + 0x88], 4
jmp 0x530388
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], edi
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
mov dword [esp + 0x50], edx
call fcn.004f3528
mov edi, eax
test eax, eax
mov edx, dword [esp + 0x50]
je 0x5369a0
mov dword [esp + 0x94], 1
jmp 0x5311a8
not eax
shr eax, 0x1f
cmp eax, 1
sbb eax, eax
not eax
and eax, 4
mov ebx, dword [esp + 0xd0]
mov eax, dword [ebx + eax]
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
mov dword [eax], edx
jmp 0x533beb
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov edx, dword [esp + 0x98]
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f3528
mov dword [esp + 0x70], eax
test eax, eax
jne 0x536596
add dword [esp + 0x78], 9
mov dword [esp + 0x94], 1
jmp 0x531c24
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], 0x200
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f3528
mov ebx, eax
mov dword [esp + 0x94], 1
test eax, eax
je 0x530368
mov esi, dword [esp + 0x7c]
mov eax, dword [esi]
cmp dword [eax + 0xc], 0x5dea98
jne 0x531ff1
mov eax, dword [eax + 0x10]
add eax, 0x10
mov dword [esp + 0xfc], eax
mov edi, dword [esi]
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x532029
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.004f2ac0
mov dword [esp + 0x94], 1
xor eax, eax
jmp 0x53165d
test eax, eax
setle al
movzx eax, al
jmp 0x535081
test eax, eax
setg al
movzx eax, al
jmp 0x535081
test eax, eax
sete al
movzx eax, al
jmp 0x535081
test eax, eax
setne al
movzx eax, al
jmp 0x535081
fld qword [esi + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x53724b
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [esi + 0x10]
mov dword [esp + 0x100], edx
jmp 0x530e49
fld qword [ebx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x537236
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [ebx + 0x10]
mov dword [esp + 0x100], edx
jmp 0x534d55
fld qword [edi + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x53728a
mov dword [esp + 0xf8], 4
mov eax, 4
lea edx, [edi + 0x10]
mov dword [esp + 0xfc], edx
jmp 0x53411c
fld qword [ecx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x537275
mov dword [esp + 0xf8], 4
mov eax, 4
mov edx, dword [esp + 0x70]
add edx, 0x10
mov dword [esp + 0xfc], edx
jmp 0x533c80
fld qword [ebx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x537260
mov dword [esp + 0xf8], 4
mov eax, 4
lea edx, [ebx + 0x10]
mov dword [esp + 0xfc], edx
jmp 0x533a91
fld qword [ecx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x5371af
mov dword [esp + 0xf8], 4
mov eax, 4
mov ebx, dword [esp + 0x88]
add ebx, 0x10
mov dword [esp + 0xfc], ebx
jmp 0x533f76
mov eax, dword [edi + 4]
test eax, eax
jne 0x530e9c
jmp 0x530ed1
mov eax, dword [esp + 0x100]
mov esi, dword [eax + ebp]
jmp 0x534ba3
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], 0x200
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f3018
test eax, eax
je 0x535840
mov dword [esp + 0x94], 1
jmp 0x534bfd
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x5353f0
mov edx, dword [ecx + 4]
test edx, edx
je 0x5353f0
mov dword [esp], eax
call fcn.004dd020
jmp 0x534bf8
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x53540f
cmp ecx, dword [0x5dea6c]
je 0x53540f
mov dword [esp], ecx
mov dword [esp + 0x50], eax
call fcn.004edc48
mov eax, dword [esp + 0x50]
mov dword [eax + 8], 0xffffffff
mov ecx, dword [0x67b764]
mov dword [eax + 0x10], ecx
mov dword [0x67b764], eax
jmp 0x534bf8
call fcn.004dcd40
mov esi, dword [0x67b764]
jmp 0x534b7f
mov eax, dword [esp + 0x7c]
mov ebp, dword [esp + 0xa0]
mov dword [ebp + 0x10], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.004f3528
test eax, eax
je 0x536c13
mov dword [esp + 0x94], 1
cmp ebx, eax
jne 0x531bc3
mov dword [esp], ebx
call fcn.004dd19c
jmp 0x531bc3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov eax, dword [edi + 0x64]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + edx*4 + 8]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004f4ed0
jmp 0x532120
mov eax, dword [edi + 4]
test eax, eax
jne 0x5340dc
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ecx, edi
jmp 0x5309d8
mov eax, dword [ecx + 4]
test eax, eax
jne 0x533c38
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
mov eax, dword [esp + 0x190]
call fcn.0052f414
mov dword [esp + 0x94], 1
jmp 0x530368
mov eax, dword [eax + 4]
mov dword [esp + 8], 0
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x3c], ecx
call dword [eax + 0x30]
test eax, eax
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x3c]
je 0x532fa7
cmp eax, 0xc
je 0x532fa7
test byte [eax - 0xc], 0x13
jne 0x532fa7
mov eax, dword [eax - 8]
test eax, eax
je 0x532fa7
mov dword [esp + 0xf0], eax
inc dword [eax]
mov esi, dword [esp + 0x70]
add dword [esp + 0x78], esi
jmp 0x530728
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.msvcrt.dll_strcmp
test eax, eax
sete al
movzx eax, al
inc ebx
cmp ebx, dword [esp + 0x104]
jge 0x5355b5
test eax, eax
je 0x534f93
mov eax, 1
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x6b
je 0x536bbc
mov edx, dword [esp + 0x78]
inc edx
mov ebx, dword [esp + 0x78]
mov cl, byte [ebx + 1]
cmp cl, 0x25
je 0x5363dc
ja 0x5363ab
cmp cl, 0x24
je 0x536413
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf0], eax
inc dword [eax]
mov dword [esp + 0x78], edx
mov dword [esp + 0x88], 0
jmp 0x5308dc
mov eax, dword [eax + 0x10]
lea edx, [eax + 0x10]
mov dword [esp + 0x100], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x534b35
mov ebx, dword [esp + 0x98]
test ebx, ebx
je 0x530f40
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jg 0x530f40
mov eax, dword [edi + 0xc]
test eax, eax
je 0x5371c4
mov eax, dword [eax + 4]
test eax, eax
je 0x5371c4
mov dword [esp], edi
call fcn.004dd020
jmp 0x530f40
mov dword [esp + 4], 0x7fffffff
mov dword [esp], str.max_size_for_a_Tcl_value___d_bytes__exceeded
call fcn.00507f04
mov eax, dword [esp + 0x70]
neg eax
mov edx, dword [esp + 0x7c]
lea ebx, [edx + eax*4 + 4]
mov edx, dword [ebx]
mov dword [esp + 0xf0], edx
mov eax, dword [edx + 4]
test eax, eax
je 0x537792
mov edx, dword [edx + 8]
mov dword [esp + 0x104], edx
add edx, edi
js 0x537771
cmp eax, dword [0x5dea6c]
je 0x5356c9
mov edx, dword [esp + 0xf0]
cmp dword [edx], 1
jle 0x536622
mov eax, dword [esp + 0x104]
add eax, edi
inc eax
mov dword [esp], eax
call fcn.004edaf0
mov edx, eax
mov eax, dword [0x67b764]
test eax, eax
je 0x53a46c
mov dword [esp + 0xf0], eax
mov ecx, dword [eax + 0x10]
mov dword [0x67b764], ecx
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 4], edx
add edi, dword [esp + 0x104]
mov dword [eax + 8], edi
cmp dword [esp + 0x7c], ebx
jb 0x535745
mov eax, dword [ebx]
mov esi, dword [eax + 4]
test esi, esi
je 0x535911
mov ecx, dword [eax + 8]
mov dword [esp + 0x104], ecx
mov edi, edx
rep movsb byte es:[edi], byte [esi]
add edx, dword [esp + 0x104]
add ebx, 4
cmp dword [esp + 0x7c], ebx
jae 0x53571a
mov byte [edx], 0
add dword [esp + 0x78], 2
mov eax, dword [esp + 0xf0]
inc dword [eax]
mov ebx, dword [esp + 0x70]
jmp 0x530675
mov eax, dword [esi + 4]
test eax, eax
jne 0x530e09
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], edi
mov ecx, esi
jmp 0x5309d8
mov eax, dword [0x67b764]
test eax, eax
je 0x537762
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov edx, 1
jmp 0x530716
mov edi, dword [ecx + 4]
test edi, edi
jne 0x533f28
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ecx, dword [esp + 0x88]
jmp 0x5309d8
mov eax, dword [esi + 4]
test eax, eax
je 0x5357ff
cmp eax, dword [0x5dea6c]
je 0x5357ff
mov dword [esp], eax
call fcn.004edc48
mov dword [esi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [esi + 0x10], eax
mov dword [0x67b764], esi
mov ebx, dword [ebx - 4]
jmp 0x5319dc
mov edx, 1
jmp 0x530187
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004f2ac0
xor eax, eax
jmp 0x531447
mov ebp, dword [esp + 0xdc]
mov eax, dword [esp + 0xbc]
mov eax, dword [eax]
mov dword [esp + 0x64], eax
dec eax
mov edx, dword [esp + 0xbc]
mov dword [edx], eax
test eax, eax
jg 0x5309ec
mov eax, dword [edx + 0xc]
test eax, eax
je 0x5376e0
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x5376e0
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
call fcn.004dd020
mov dword [esp + 0x94], 1
jmp 0x530368
cmp cl, 0x26
je 0x5361cd
cmp cl, 0x27
jne 0x5345c4
test eax, eax
jne 0x535be4
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
shl eax, 0x18
movzx ecx, byte [ebx + 3]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [ebx + 5]
or eax, ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or eax, ecx
add edx, eax
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0x7c]
jmp 0x534834
mov eax, dword [edx + 0xc]
test eax, eax
je 0x5362d0
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x5362d0
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
call fcn.004dd020
jmp 0x534c2a
lea esi, [esp + 0x104]
mov dword [esp + 4], esi
mov dword [esp], eax
mov dword [esp + 0x50], edx
call fcn.004dd4d4
mov esi, eax
test eax, eax
mov edx, dword [esp + 0x50]
je 0x53573c
mov ecx, dword [esp + 0x104]
jmp 0x535731
mov eax, dword [0x67b764]
test eax, eax
je 0x53a9bd
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov edx, 1
jmp 0x5344d0
mov edx, dword [esi + 0x10]
mov dword [esp + 0xf8], edx
jmp 0x53445d
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x104], eax
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x5376c5
sub dword [esp + 0x7c], 4
mov esi, dword [esp + 0x104]
mov ebx, 1
jmp 0x5306ed
mov ebx, dword [esp + 0x194]
mov ebx, dword [ebx + 0x48]
mov edi, dword [esi + 0x10]
add ebx, edi
mov dword [esp + 0x78], ebx
mov dword [esp + 0x88], 0
jmp 0x530228
mov eax, dword [ebx + 0x10]
lea edx, [eax + 0x10]
mov dword [esp + 0x100], edx
mov edx, dword [eax + 8]
mov dword [esp + 0x104], edx
sub dword [esp + 0x7c], 4
mov esi, dword [esp + 0x78]
movsx eax, byte [esi + 1]
shl eax, 0x18
movzx ecx, byte [esi + 2]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [esi + 4]
or eax, ecx
movzx ecx, byte [esi + 3]
shl ecx, 8
or eax, ecx
sub edx, eax
mov edi, dword [esp + 0x194]
add edx, dword [edi + 0x44]
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], ecx
mov esi, dword [esp + 0x190]
mov eax, dword [esi + 0x110]
mov ecx, 1
call fcn.0052f1e8
sub eax, 4
sub eax, dword [esp + 0xb0]
sar eax, 2
je 0x535a91
shl eax, 2
add dword [esp + 0xb0], eax
add dword [esp + 0x80], eax
add dword [esp + 0x90], eax
add dword [esp + 0x7c], eax
mov eax, dword [esi + 0x110]
mov eax, dword [eax]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x104]
test ecx, ecx
jle 0x535ac2
xor eax, eax
mov esi, dword [esp + 0x7c]
mov edx, dword [esp + 0x100]
mov edx, dword [edx + eax*4]
mov dword [esi + eax*4 + 4], edx
inc dword [edx]
inc eax
cmp eax, ecx
jne 0x535aa2
mov edi, dword [esp + 0x7c]
lea edi, [edi + eax*4]
mov dword [esp + 0x7c], edi
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jg 0x53173a
mov dword [esp], ebx
call fcn.004dd020
jmp 0x53173a
mov eax, dword [0x67b764]
test eax, eax
je 0x5397e0
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov edx, 1
mov dword [eax], edx
add dword [esp + 0x78], 9
mov dword [esp + 0x88], 0
jmp 0x530728
mov dword [esp + 0xa8], 2
jmp 0x534dff
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x534f8d
mov eax, dword [eax + 0x10]
lea edx, [eax + 0x10]
mov dword [esp + 0x100], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x530ffc
sub esi, 4
mov dword [esp + 0x7c], esi
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0x98]
lea ebx, [ebx + edi + 1]
mov dword [esp + 0x78], ebx
jmp 0x530228
mov edx, dword [esp + 0xf8]
mov eax, 0x616925
jmp 0x534fd6
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x53358f
mov eax, dword [esi + 0x10]
lea edx, [eax + 0x10]
mov dword [esp + 0x100], edx
mov eax, dword [eax + 8]
mov dword [esp + 0xf8], eax
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea98
jne 0x533632
jmp 0x53366c
test eax, eax
jne 0x5358b5
mov eax, 5
jmp 0x5358d8
lea ebx, [edx + 1]
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx]
mov dword [esp + 0x10], eax
lea eax, [edx*4]
sub ecx, eax
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.00519e18
mov dword [esp + 0x88], eax
jmp 0x5311e8
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x533fc0
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ecx, dword [esp + 0xbc]
jmp 0x5309d8
mov dword [esp], ebx
call fcn.004e0ce4
mov dword [esp + 0xf0], eax
mov eax, dword [0x67b764]
test eax, eax
je 0x5397d1
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov edx, dword [0x5dea6c]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax], 1
mov ebx, dword [esp + 0x190]
mov dword [ebx + 0x1e4], eax
inc dword [esp + 0x78]
mov dword [esp + 0x94], 1
jmp 0x530728
mov dword [esp], edi
call fcn.004dd020
mov eax, dword [esp + 0xf0]
jmp 0x5347b2
mov dword [esp + 0x104], 0
mov dword [esp + 0xf8], 0
xor eax, eax
jmp 0x533b8d
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004f2ac0
xor eax, eax
jmp 0x5315eb
mov eax, dword [eax + 4]
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], eax
call dword [eax + 0x30]
test eax, eax
je 0x535cf7
cmp eax, 0xc
je 0x535cf7
test byte [eax - 0xc], 0x10
jne 0x53151b
mov ebx, dword [eax - 8]
test ebx, ebx
je 0x535cf7
mov eax, 1
jmp 0x5315eb
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004e0b5c
mov dword [esp + 0x7c], ebx
mov ebx, 1
jmp 0x53319a
mov edx, dword [esp + 0x78]
mov bl, byte [edx + 1]
mov ecx, edx
mov dl, byte [edx + 2]
mov cl, byte [ecx + 3]
mov byte [esp + 0xa8], cl
mov ecx, dword [esp + 0x78]
mov cl, byte [ecx + 4]
mov byte [esp + 0xbc], cl
lea eax, [esp + 0x100]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0x190]
mov dword [esp], eax
mov byte [esp + 0x50], dl
call fcn.005166a4
mov dword [esp + 0x88], eax
test eax, eax
movzx edx, byte [esp + 0x50]
jne 0x53562a
mov eax, ebx
shl eax, 0x18
shl edx, 0x10
or eax, edx
movzx edx, byte [esp + 0xbc]
or eax, edx
movzx edx, byte [esp + 0xa8]
shl edx, 8
or eax, edx
mov edx, dword [esp + 0x100]
test edx, edx
mov dword [esp], eax
je 0x53a483
call fcn.004ddcb8
mov ebx, eax
inc dword [eax]
mov eax, dword [esp + 0x100]
cmp dword [eax], 1
jle 0x535e40
mov dword [esp], eax
call fcn.004dd19c
mov dword [esp + 0x100], eax
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x7c]
mov eax, dword [edx]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.00516438
mov eax, dword [esp + 0x100]
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.0052f950
mov dword [esp + 0x88], eax
test eax, eax
je 0x5371a2
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
test eax, eax
jle 0x53717a
mov ebx, 1
jmp 0x5311e8
mov eax, edx
neg eax
mov ebx, dword [esp + 0x7c]
lea eax, [ebx + eax*4 + 4]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
mov dword [esp + 0x50], edx
call fcn.00519cc0
mov dword [esp + 0x88], eax
mov edx, dword [esp + 0x50]
mov ebx, edx
jmp 0x5311e8
mov dword [esp], edi
call fcn.004edc48
jmp 0x530f40
mov dword [esp + 0x7c], esi
jmp 0x530368
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str._n_____reading_value_of_variable_to_increment_
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e7350
mov eax, dword [edi]
dec eax
mov dword [edi], eax
test eax, eax
jg 0x530368
mov dword [esp], edi
call fcn.004dd020
jmp 0x530368
mov eax, dword [esi + 0xc]
test eax, eax
je 0x536896
mov eax, dword [eax + 4]
test eax, eax
je 0x536896
mov dword [esp], esi
call fcn.004dd020
jmp 0x532e57
mov eax, dword [ebx + 4]
test eax, eax
jne 0x533cc5
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], edx
mov ecx, ebx
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
mov eax, dword [esp + 0x190]
call fcn.0052f414
jmp 0x5309ec
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5368c7
mov edi, dword [eax + 4]
test edi, edi
je 0x5368c7
mov dword [esp], ebp
call fcn.004dd020
jmp 0x53216a
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xa0]
mov dword [edi + 0x10], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov edx, dword [esp + 0x190]
mov dword [esp], edx
call fcn.0054f740
mov esi, dword [ebx + 4]
test esi, esi
je 0x5351a1
mov eax, 1
mov dword [esp + 0x94], 1
jmp 0x53165d
mov ebx, dword [esp + 0xf8]
test ebx, ebx
jne 0x5370e1
xor eax, eax
mov edx, dword [esp + 0x104]
test edx, edx
setne al
jmp 0x533e71
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx - 4]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x7d
je 0x537867
mov ebx, 2
jmp 0x53319a
mov dword [esp + 0x104], 1
lea eax, [esi + 0x10]
mov dword [esp + 0x100], eax
mov eax, 1
jmp dword [eax*4 + 0x616e08]
mov eax, dword [ebx + 4]
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [eax + 0x30]
test eax, eax
je 0x532da7
mov ebx, eax
sub ebx, 0xc
je 0x532da7
test byte [eax - 0xc], 0x2b
jne 0x532da7
mov esi, dword [esp + 0x7c]
sub esi, 4
mov edx, dword [esp + 0x7c]
mov eax, dword [edx - 4]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x53947f
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x7c]
mov dword [ecx - 4], edi
mov dword [esp + 0x7c], esi
jmp 0x532e43
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x5369fe
mov esi, dword [eax + 4]
test esi, esi
je 0x5369fe
mov dword [esp], ebx
call fcn.004dd020
jmp 0x530cde
mov dword [esp + 4], ebx
mov dword [esp], str.TclExecuteByteCode:_unrecognized_builtin_function_code__d
call fcn.00507f04
jmp 0x5342dc
xor eax, eax
mov esi, dword [ebx + 0x10]
test esi, esi
setne al
mov dword [esp + 0x104], eax
jmp 0x533e53
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], edi
mov ecx, esi
mov ebx, dword [esp + 0x78]
mov dl, byte [ebx]
mov eax, dword [esp + 0x190]
call fcn.0052f414
jmp 0x533138
mov dword [esp + 0x104], 1
lea eax, [edi + 0x10]
mov dword [esp + 0x100], eax
mov ebx, dword [edi + 4]
test ebx, ebx
je 0x530ede
cmp dword [edi], 1
jg 0x53617c
cmp ebx, dword [0x5dea6c]
je 0x536170
mov dword [esp], ebx
call fcn.004edc48
mov dword [edi + 4], 0
jmp 0x530ede
mov dword [edi + 4], 0
mov dword [esp], edi
call fcn.004dd19c
mov dword [esp + 0xf0], eax
mov dword [edi + 4], ebx
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x530728
mov ebp, dword [esp + 0x70]
jmp 0x530368
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xa0]
mov dword [edi + 0x10], eax
jmp 0x533124
test eax, eax
je 0x5361d1
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
jmp 0x5358d8
test eax, eax
je 0x5361c0
mov eax, 2
jmp 0x5358d8
cmp dword [edi + 0xc], 0x5deae4
jne 0x533b34
mov dword [esp], ebx
call fcn.004eb070
mov dword [esp + 0xf8], eax
mov dword [esp], edi
call fcn.004eb070
mov esi, eax
mov dword [esp + 0x104], eax
mov eax, dword [ebx + 8]
mov edx, dword [esp + 0xf8]
cmp eax, edx
jne 0x53621f
cmp esi, dword [edi + 8]
je 0x53a2d9
mov dword [esp], edi
mov dword [esp + 0x50], edx
call fcn.004eb16c
mov edi, eax
mov dword [esp], ebx
call fcn.004eb16c
mov edx, dword [esp + 0x50]
cmp esi, edx
jle 0x53623f
mov esi, edx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.0050c7b8
jmp 0x533b7b
cmp dword [edi + 0xc], 0x5deac4
jne 0x533b34
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004e8f44
mov ebx, eax
lea esi, [esp + 0x104]
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.004e8f44
mov ecx, dword [esp + 0x104]
mov edx, dword [esp + 0xf8]
cmp edx, ecx
jle 0x53629d
mov edx, ecx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ebx
call sub.msvcrt.dll_memcmp
jmp 0x533b7b
dec eax
mov dword [ebx], eax
mov dword [esp], ebx
call fcn.004dd19c
mov dword [esp + 0xf0], eax
inc dword [eax]
mov dword [edi + 4], eax
jmp 0x532c5c
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 4]
test eax, eax
je 0x5362ee
cmp eax, dword [0x5dea6c]
je 0x5362ee
mov dword [esp], eax
call fcn.004edc48
mov eax, dword [esp + 0xbc]
mov dword [eax + 8], 0xffffffff
mov eax, dword [0x67b764]
mov edx, dword [esp + 0xbc]
mov dword [edx + 0x10], eax
mov dword [0x67b764], edx
jmp 0x534c2a
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004eb1a8
mov ebx, eax
lea edx, [esp + 0x104]
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.004eb1a8
mov dword [esp + 0x10], esi
mov edx, dword [esp + 0x104]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0050cea0
jmp 0x5316d4
mov ebx, dword [esp + 0x78]
xor eax, eax
cmp byte [ebx], 0x2e
sete al
mov edx, dword [esp + 0x78]
inc edx
mov ebx, dword [esp + 0x78]
mov cl, byte [ebx + 1]
cmp cl, 0x25
je 0x5373d0
ja 0x5347ed
cmp cl, 0x24
jne 0x5345c4
test eax, eax
jne 0x536f76
mov eax, 2
jmp 0x53482a
cmp cl, 0x26
je 0x536405
cmp cl, 0x27
jne 0x5355e6
test eax, eax
je 0x5363e0
mov eax, 5
add edx, eax
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x88], 0
jmp 0x534834
test eax, eax
je 0x5363bd
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
shl eax, 0x18
movzx ecx, byte [ebx + 3]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [ebx + 5]
or eax, ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or eax, ecx
jmp 0x5363c2
test eax, eax
jne 0x536417
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
jmp 0x5363c2
test eax, eax
jne 0x536409
mov eax, 2
jmp 0x5363c2
inc dword [edi]
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], edx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], 0x200
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov esi, dword [esp + 0x190]
mov dword [esp], esi
call fcn.004f3018
mov dword [esp + 0xf0], eax
mov edx, dword [edi]
dec edx
mov dword [edi], edx
test edx, edx
jle 0x53710a
mov dword [esp + 0x94], 1
test eax, eax
jne 0x53122b
jmp 0x530368
fld qword [edi + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x5370eb
mov dword [esp + 0x104], 4
mov eax, 4
jmp 0x5370fb
lea esi, [esp + 0x160]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], esi
mov dword [esp], esi
call fcn.0053b8f8
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.0053b5bc
cmp dword [ebx], 1
jle 0x536f83
mov dword [esp], esi
call fcn.004de8a4
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
mov dword [esp + 0x88], 0
jmp 0x530728
mov dword [esp + 0x104], 1
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x100]
mov esi, dword [eax]
cmp dword [ebx], 1
jle 0x537134
mov eax, dword [0x67b764]
test eax, eax
je 0x5397ef
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
not esi
mov dword [eax + 0x10], esi
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x536523
mov dword [esp + 0x94], 1
jmp 0x531ac0
mov edi, dword [0x67b764]
test edi, edi
je 0x5394f0
mov eax, dword [edi + 0x10]
mov dword [0x67b764], eax
mov dword [edi], 0
mov eax, dword [0x5dea6c]
mov dword [edi + 4], eax
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [esp + 0x94], 1
jmp 0x534f0d
mov dword [esp + 0xf8], 2
mov eax, dword [esp + 0x70]
add eax, 0x10
mov dword [esp + 0xfc], eax
jmp 0x533c92
mov dword [esp + 0xf8], 1
mov eax, ecx
add eax, 0x10
mov dword [esp + 0xfc], eax
jmp 0x533c92
mov ecx, dword [edx + 0xc]
test ecx, ecx
je 0x536644
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x536644
mov dword [esp], edx
mov dword [esp + 0x50], eax
call ecx
mov edx, dword [esp + 0xf0]
mov eax, dword [esp + 0x50]
mov dword [edx + 0xc], 0
mov ecx, dword [esp + 0x104]
add ecx, edi
inc ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0x50], edx
call fcn.004edb94
mov edx, dword [esp + 0x50]
mov dword [edx + 4], eax
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0x104]
add edi, edx
mov dword [ecx + 8], edi
mov eax, dword [ecx + 4]
test eax, eax
je 0x538a07
add edx, eax
mov ebx, esi
jmp 0x53571a
mov eax, dword [0x67b764]
test eax, eax
je 0x5389ee
mov dword [esi + 4], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0xffffffff
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
jmp 0x533939
mov dword [esp], eax
call fcn.004dd020
jmp 0x53135c
lea ecx, [esp + 0xf8]
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.004dd4d4
mov edx, dword [esp + 0xf8]
jmp 0x534fd6
mov edx, dword [esp + 0x7c]
mov eax, dword [edx]
mov dword [edx], esi
inc dword [esi]
mov esi, edx
add esi, 4
mov dword [edx + 4], eax
mov edx, dword [eax]
test edx, edx
jg 0x53435b
mov dword [esp], eax
call fcn.004dd020
mov dword [esp + 0x7c], esi
jmp 0x53435f
mov dword [esp + 0xf8], 1
mov eax, ebx
add eax, 0x10
mov dword [esp + 0xfc], eax
jmp 0x533f7f
mov dword [esp], edi
call fcn.004dd020
jmp 0x532aae
mov eax, dword [eax + 0x10]
add eax, 0x10
mov dword [esp + 0xfc], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x104], eax
jmp 0x531b2e
lea eax, [esp + 0x104]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004e8f44
mov edi, eax
jmp 0x534410
lea ebx, [edx + eax + 1]
test ebx, ebx
jns 0x53107b
mov ebx, 0xffffffff
jmp 0x53107b
lea ecx, [ecx + eax + 1]
test ecx, ecx
jns 0x53103c
mov ecx, 0xffffffff
jmp 0x53103c
mov dword [esp], ebx
call fcn.004dd020
jmp 0x532391
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e10c4
mov edx, dword [esi]
mov eax, dword [edx + 4]
test eax, eax
je 0x5396de
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], str.__not_known_in_dictionary
mov dword [esp + 8], eax
mov dword [esp + 4], str.key__
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0ec4
mov dword [esp + 0x94], 1
jmp 0x530368
mov eax, dword [esp + 0xf8]
lea esi, [esi + eax + 1]
mov dword [esp + 0x104], esi
mov ebx, 5
jmp 0x5306ed
mov dword [esp], edi
mov dword [esp + 0x50], eax
call fcn.004dd020
mov eax, dword [esp + 0x50]
jmp 0x53232a
add eax, 0xa
mov dword [esp + 0x78], eax
mov edx, dword [esp + 0x7c]
mov ebx, dword [edx]
mov dword [esp + 0x88], 0
jmp 0x5319dc
mov dword [esp + 0xf8], 1
lea eax, [ebx + 0x10]
mov dword [esp + 0xfc], eax
jmp 0x533a9a
mov eax, dword [esi + 4]
test eax, eax
je 0x5368ad
cmp eax, dword [0x5dea6c]
je 0x5368ad
mov dword [esp], eax
call fcn.004edc48
mov dword [esi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [esi + 0x10], eax
mov dword [0x67b764], esi
jmp 0x532e57
mov eax, dword [ebp + 4]
test eax, eax
je 0x5368de
cmp eax, dword [0x5dea6c]
je 0x5368de
mov dword [esp], eax
call fcn.004edc48
mov dword [ebp + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebp + 0x10], eax
mov dword [0x67b764], ebp
jmp 0x53216a
cmp al, 0x49
sete al
movzx eax, al
jmp 0x5345a0
mov eax, dword [esp + 0x104]
cmp eax, 5
jne 0x536150
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
cmp byte [ebx], 0x3a
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
je 0x5354e3
mov eax, dword [esp + 0x100]
fld qword [eax]
fstp qword [esp + 4]
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052fefc
jmp 0x5309ec
mov dword [esp + 0xf8], 2
lea eax, [edi + 0x10]
mov dword [esp + 0xfc], eax
jmp 0x53412e
mov dword [esp + 0xf8], 1
lea eax, [edi + 0x10]
mov dword [esp + 0xfc], eax
jmp 0x53412e
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0ce4
mov dword [esp + 0xf0], eax
jmp 0x530368
mov edi, dword [0x67b764]
test edi, edi
je 0x5389da
mov eax, dword [edi + 0x10]
mov dword [0x67b764], eax
mov dword [edi], 0
mov eax, dword [0x5dea6c]
mov dword [edi + 4], eax
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [esp + 0x94], 1
mov dword [esp + 0x98], 1
jmp 0x5311bc
mov dword [esp], edi
call fcn.004dd020
mov eax, dword [esp + 0x50]
jmp 0x5342b7
mov eax, dword [ebx + 4]
test eax, eax
je 0x536a15
cmp eax, dword [0x5dea6c]
je 0x536a15
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x530cde
mov dword [esp + 0x104], 2
lea eax, [esi + 0x10]
mov dword [esp + 0x100], eax
mov eax, 2
jmp 0x53605e
lea eax, [esp + 0x108]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004dda80
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004dda80
mov ebx, dword [esp + 0x78]
mov bl, byte [ebx]
mov al, bl
sub eax, 0x35
cmp al, 0x2e
jbe 0x536f64
fldz
fxam
wait
fnstsw ax
and eax, 0x4500
cmp ax, 0x100
je 0x537ffc
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jle 0x537f7b
mov eax, dword [0x67b764]
test eax, eax
je 0x537f64
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
fstp qword [eax + 0x10]
mov dword [eax + 0xc], 0x5dea44
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
add edi, 0xa
mov dword [esp + 0x78], edi
mov dword [esp + 0x88], 0
jmp 0x5332be
mov dword [esp + 0x104], 2
lea eax, [edi + 0x10]
mov dword [esp + 0x100], eax
jmp 0x536150
test esi, esi
jne 0x53372d
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004e8f44
mov ebx, eax
lea ecx, [esp + 0x104]
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.004e8f44
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x104]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004fd54c
jmp 0x5316d4
add dword [esp + 0x78], 5
jmp 0x532ae8
mov dword [esp + 0x104], 2
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
jmp 0x534d79
xor eax, 1
jmp 0x5355c2
mov dword [esp + 0xf8], 2
lea eax, [ebx + 0x10]
mov dword [esp + 0xfc], eax
jmp 0x533a9a
mov dword [esp + 0xf8], 2
mov eax, dword [esp + 0x88]
add eax, 0x10
mov dword [esp + 0xfc], eax
jmp 0x533f7f
mov ebp, dword [esp + 0x70]
mov dword [esp + 0x94], 1
jmp 0x530368
mov eax, dword [esp + 0xfc]
mov eax, dword [eax + esi*4]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], edi
call fcn.00516700
mov dword [esp + 0x94], 1
jmp 0x531be1
lea esi, [esp + 0x104]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004e8f44
jmp 0x534508
mov eax, dword [ebx + 4]
test eax, eax
jne 0x533a51
jmp 0x533b13
lea esi, [esp + 0x140]
mov dword [esp + 0x98], esi
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de4e0
lea esi, [esp + 0x150]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], 0
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
call fcn.0053b8c8
mov dword [esp + 4], 0
mov dword [esp], esi
inc eax
je 0x5388f6
call fcn.0053b8c8
inc eax
je 0x5388e3
mov ecx, 2
mov edi, esi
mov edx, ebx
lea ebx, [esp + 0x160]
mov dword [esp], ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x3c], ecx
call fcn.0053b204
mov eax, dword [esp + 0x78]
mov al, byte [eax]
mov byte [esp + 0x88], al
cmp al, 0x2b
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x3c]
je 0x53880a
cmp al, 0x2c
je 0x538797
cmp al, 0x2a
je 0x53866f
mov edx, dword [esp + 0x98]
mov dword [esp], edx
call fcn.005226b8
mov dword [esp], esi
call fcn.005226b8
mov ecx, dword [esp + 0x70]
cmp dword [ecx], 1
jle 0x538656
mov dword [esp], ebx
call fcn.004de8a4
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
cmp eax, 1
je 0x5384cb
xor ecx, ecx
mov edx, dword [esp + 0xf8]
cmp edx, 1
je 0x538487
cmp edx, 2
jne 0x538351
mov edx, dword [esp + 0xfc]
mov esi, dword [edx]
mov edi, dword [edx + 4]
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edi
cmp eax, 3
je 0x5382d9
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de214
mov ebx, dword [esp + 0x120]
mov ecx, dword [esp + 0x124]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 0x3c], ecx
call fcn.005cb544
mov esi, eax
mov edi, edx
test edx, edx
mov ecx, dword [esp + 0x3c]
js 0x538288
mov eax, edx
or eax, esi
je 0x5381fd
mov edx, ecx
imul edx, esi
mov eax, edi
imul eax, ebx
lea edi, [edx + eax]
mov eax, ebx
mul esi
mov dword [esp + 0xa8], eax
add edx, edi
mov dword [esp + 0xac], edx
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
sub eax, dword [esp + 0xa8]
sbb edx, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.004de0e4
inc dword [esp + 0x78]
jmp 0x5339d4
mov edx, dword [eax + 0xc]
test edx, edx
je 0x5389a1
mov edx, dword [edx + 4]
test edx, edx
je 0x5389a1
mov dword [esp], eax
call fcn.004dd020
jmp 0x531221
mov eax, dword [eax + 4]
test eax, eax
je 0x536eb3
cmp dword [esp + 0x70], eax
je 0x536eb3
mov dword [esp], eax
call fcn.004edc48
mov edx, dword [0x67b764]
mov eax, dword [esi + 4]
mov dword [eax + 8], 0xffffffff
mov dword [eax + 0x10], edx
mov dword [0x67b764], eax
jmp 0x531f15
or dword [ebx + 0x100], 4
jmp 0x530dbe
mov eax, dword [esp + 0x104]
cmp eax, 1
je 0x537568
cmp eax, 2
jne 0x532c4a
mov eax, dword [esp + 0x100]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x98]
cdq
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
add eax, dword [esp + 0x30]
adc edx, dword [esp + 0x34]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
xor edx, ecx
js 0x539837
mov eax, dword [ebx]
cmp eax, 1
jle 0x53a2b5
dec eax
mov dword [ebx], eax
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
mov dword [edi + 4], eax
jmp 0x532cd1
movzx eax, al
jmp dword [eax*4 + 0x616e20]
test eax, eax
jne 0x5363a1
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 2]
jmp 0x53482a
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.004de590
inc dword [esp + 0x78]
jmp 0x5339d4
mov eax, 1
jmp 0x533e71
mov dword [esp + 0x104], 5
mov eax, 5
lea edx, [edi + 0x10]
mov dword [esp + 0x100], edx
jmp 0x53690c
mov edx, dword [edi + 0xc]
test edx, edx
je 0x5397fe
mov ecx, dword [edx + 4]
test ecx, ecx
je 0x5397fe
mov dword [esp], edi
call fcn.004dd020
mov eax, dword [esp + 0xf0]
jmp 0x536481
mov eax, dword [ebx + 4]
test eax, eax
je 0x537152
cmp eax, dword [0x5dea6c]
je 0x53714b
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 4], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x537165
mov eax, dword [eax + 4]
test eax, eax
je 0x537165
mov dword [esp], ebx
call eax
not esi
mov dword [ebx + 0x10], esi
mov dword [ebx + 0xc], 0x5dea30
inc dword [esp + 0x78]
jmp 0x5339d4
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x539546
mov eax, dword [eax + 4]
test eax, eax
je 0x539546
mov dword [esp], ebx
call fcn.004dd020
mov ebx, 1
jmp 0x5311e8
mov dword [esp], edi
call fcn.004dd8e0
jmp 0x535e66
mov dword [esp + 0xf8], 5
mov eax, 5
jmp 0x53533c
mov eax, dword [edi + 4]
test eax, eax
je 0x5371db
cmp eax, dword [0x5dea6c]
je 0x5371db
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
jmp 0x530f40
mov eax, dword [esp + 0x100]
mov ebx, dword [eax + 4]
shr ebx, 0x1f
test ebx, ebx
je 0x5341d9
mov dword [esp + 4], 0xffffffff
mov dword [esp], str.negative_shift_argument
call fcn.004eaf6c
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
jmp 0x530368
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x535258
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x535220
mov dword [esp + 0xf8], 5
mov eax, 5
jmp 0x535304
mov dword [esp + 0xf8], 5
mov eax, 5
jmp 0x5352c8
mov dword [esp + 0xf8], 5
mov eax, 5
jmp 0x535290
mov eax, dword [esp + 0x100]
test eax, eax
je 0x538621
cmp dword [eax], 1
jle 0x5372c3
mov dword [esp], eax
call fcn.004dd19c
mov dword [esp + 0x100], eax
mov edx, dword [esp + 0x7c]
mov ecx, dword [edx]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004eba00
mov eax, dword [esp + 0x100]
jmp 0x530864
mov eax, dword [esp + 0x100]
test eax, eax
je 0x53a2fa
cmp dword [eax], 1
jle 0x5377cf
mov dword [esp], eax
call fcn.004dd19c
mov dword [esp + 0x100], eax
mov edx, dword [esp + 0x7c]
mov ecx, dword [edx]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004df63c
mov dword [esp + 0x88], eax
test eax, eax
mov eax, dword [esp + 0x100]
je 0x530864
mov edx, dword [eax]
dec edx
mov dword [eax], edx
test edx, edx
jle 0x538633
mov eax, dword [esp + 0x70]
test eax, eax
je 0x530f40
jmp 0x535639
inc dword [edi]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xa0]
mov dword [ecx + 0x10], eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], 0x200
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f3018
mov dword [esp + 0xf0], eax
mov edx, dword [edi]
dec edx
mov dword [edi], edx
test edx, edx
jle 0x537e3c
mov dword [esp + 0x94], 1
test eax, eax
jne 0x5308b4
jmp 0x530368
test eax, eax
jne 0x534807
mov eax, 5
jmp 0x53482a
add ebx, 6
mov dword [esp + 0x78], ebx
jmp 0x5363c8
mov eax, dword [ebx + 4]
test eax, eax
jne 0x532c15
jmp 0x532c4a
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x53359c
mov dword [esp + 0x104], 1
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, 1
jmp 0x533d17
fld qword [ebx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x53aafa
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [ebx + 0x10]
mov dword [esp + 0x100], edx
jmp 0x533d05
mov dword [esp + 0x104], 2
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, 2
jmp 0x533d17
mov edx, dword [eax + 0xc]
test edx, edx
je 0x53aa19
mov edx, dword [edx + 4]
test edx, edx
je 0x53aa19
mov dword [esp], eax
call fcn.004dd020
jmp 0x531c18
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov edx, dword [esp + 0x98]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], 0x200
mov eax, dword [esp + 0x70]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004f3018
mov dword [esp + 0xf0], eax
test eax, eax
je 0x53a33d
mov dword [esp + 0x94], 1
jmp 0x531c1f
fld qword [ebx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x53a9cc
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [ebx + 0x10]
mov dword [esp + 0x100], edx
jmp 0x536edd
mov dword [esp + 0x104], 1
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x100]
mov eax, dword [eax]
mov esi, dword [esp + 0x98]
add esi, eax
mov edx, esi
xor edx, eax
js 0x53a42d
mov eax, dword [ebx]
cmp eax, 1
jle 0x53a3e6
dec eax
mov dword [ebx], eax
mov eax, dword [0x67b764]
test eax, eax
je 0x53a38f
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov dword [eax + 0x10], esi
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
mov dword [edi + 4], eax
jmp 0x532cd1
mov dword [esp + 0x104], 2
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
jmp 0x536eef
mov byte [esp + 0x50], al
call fcn.004dcd40
mov edi, dword [0x67b764]
movzx eax, byte [esp + 0x50]
jmp 0x534dca
call sub.msvcrt.dll_strcmp
test eax, eax
setne al
movzx eax, al
jmp 0x5345a0
mov dword [esp], eax
call fcn.004dd19c
mov dword [esp + 0x70], eax
jmp 0x531b47
mov esi, dword [esp + 0x78]
movzx ebx, byte [esi + 2]
shl ebx, 0x10
movzx eax, byte [esi + 1]
shl eax, 0x18
or ebx, eax
movzx eax, byte [esi + 3]
shl eax, 8
or ebx, eax
movzx eax, byte [esi + 4]
or ebx, eax
mov edi, dword [esp + 0x190]
mov dword [esp], edi
call fcn.004e0ce4
mov dword [esp + 0xf0], eax
mov edx, dword [0x67b764]
test edx, edx
je 0x53a9e1
mov ecx, dword [edx + 0x10]
mov dword [0x67b764], ecx
mov ecx, dword [0x5dea6c]
mov dword [edx + 4], ecx
mov dword [edx + 8], 0
mov dword [edx + 0xc], 0
mov dword [edx], 1
mov ecx, dword [esp + 0x190]
mov dword [ecx + 0x1e4], edx
add dword [esp + 0x78], ebx
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x94], 1
jmp 0x53069a
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x53217f
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x537731
mov eax, dword [eax + 4]
test eax, eax
je 0x537731
mov dword [esp], ebx
call fcn.004dd020
jmp 0x5359ae
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 4]
test eax, eax
je 0x5376fe
cmp eax, dword [0x5dea6c]
je 0x5376fe
mov dword [esp], eax
call fcn.004edc48
mov eax, dword [esp + 0xbc]
mov dword [eax + 8], 0xffffffff
mov eax, dword [0x67b764]
mov edx, dword [esp + 0xbc]
mov dword [edx + 0x10], eax
mov dword [0x67b764], edx
mov dword [esp + 0x94], 1
jmp 0x530368
mov eax, dword [ebx + 4]
test eax, eax
je 0x537748
cmp eax, dword [0x5dea6c]
je 0x537748
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x5359ae
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x53578c
mov dword [esp + 4], 0x7fffffff
mov dword [esp], str.max_size_for_a_Tcl_value___d_bytes__exceeded
mov dword [esp + 0x50], eax
call fcn.00507f04
mov eax, dword [esp + 0x50]
jmp 0x5356b1
lea ecx, [esp + 0x104]
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.004dd4d4
mov edx, dword [esp + 0x104]
jmp 0x5356a9
mov dword [esp], edi
call fcn.004dd020
mov dword [esp + 0x7c], esi
jmp 0x53435f
mov dword [esp], esi
call fcn.004dd020
jmp 0x532cc2
mov edx, dword [esp + 0x7c]
mov ecx, dword [edx]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x190]
mov dword [esp], ecx
call fcn.004df63c
mov dword [esp + 0x88], eax
test eax, eax
jne 0x537348
jmp 0x53085d
mov eax, dword [ebx + 4]
test eax, eax
jne 0x534161
jmp 0x5309c8
fld qword [ebx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x538179
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [ebx + 0x10]
mov dword [esp + 0x100], edx
jmp 0x5341a1
mov dword [esp + 0x104], 2
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, 2
jmp 0x5341b3
mov ebx, dword [esp + 0x190]
and dword [ebx + 0x100], 0xfffffffb
mov ebx, 2
jmp 0x53319a
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea1c
je 0x539679
cmp eax, 0x5dea30
je 0x53965a
lea eax, [esp + 0x118]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de214
mov eax, dword [ebx + 0xc]
cmp eax, 0x5dea1c
je 0x539641
cmp eax, 0x5dea30
je 0x539626
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de214
mov ebx, dword [esp + 0x78]
mov al, byte [ebx]
cmp al, 0x2b
je 0x5395f7
cmp al, 0x2c
je 0x5395c8
cmp al, 0x2a
je 0x539599
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0xc8]
mov esi, dword [esp + 0xcc]
cmp dword [ecx], 1
jle 0x53957c
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
dec eax
je 0x538091
lea ebx, [esp + 0x130]
mov dword [esp + 0x70], ebx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de4e0
lea ebx, [esp + 0x140]
mov dword [esp + 0x98], ebx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de4e0
lea esi, [esp + 0x150]
mov dword [esp], esi
call fcn.0053b204
mov ebx, dword [esp + 0x78]
mov bl, byte [ebx]
mov al, bl
sub eax, 0x35
cmp al, 0x2e
ja case.0x5379fb.332
movzx eax, al
jmp dword [eax*4 + 0x616edc]
cmp eax, 3
je 0x537987
cmp esi, 3
je 0x537987
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea1c
je 0x53a283
cmp eax, 0x5dea30
je 0x53a261
lea eax, [esp + 0x118]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de214
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea1c
je 0x53a248
cmp eax, 0x5dea30
je 0x53a226
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de214
mov ebx, dword [esp + 0x78]
mov al, byte [ebx]
cmp al, 0x36
je 0x53a164
cmp al, 0x38
je 0x53a0ca
cmp al, 0x35
je 0x53a06b
xor ecx, ecx
xor ebx, ebx
mov edx, dword [esp + 0x88]
cmp dword [edx], 1
jle 0x53a04b
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
mov dword [esp + 0x104], 1
mov eax, ecx
add eax, 0x10
mov dword [esp + 0x100], eax
mov esi, 1
jmp 0x534017
lea ebx, [esp + 0x160]
mov dword [esp], ebx
call fcn.0053b204
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov edi, dword [esp + 0x98]
mov dword [esp + 4], edi
mov edx, dword [esp + 0x70]
mov dword [esp], edx
call fcn.005884c4
mov eax, dword [esp + 0x160]
test eax, eax
je 0x537b72
mov ecx, dword [esp + 0x148]
cmp dword [esp + 0x168], ecx
je 0x537b72
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00588414
mov dword [esp], ebx
call fcn.005226b8
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
call fcn.005226b8
mov edi, dword [esp + 0x98]
mov dword [esp], edi
call fcn.005226b8
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jle 0x539026
mov dword [esp], esi
call fcn.004de8a4
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
fld qword [ecx + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x53807c
mov dword [esp + 0x104], 4
mov esi, 4
mov eax, dword [esp + 0xbc]
add eax, 0x10
mov dword [esp + 0x100], eax
jmp 0x53400e
mov dword [esp], str.mis_issued_dictFirst_
call fcn.00507f04
jmp 0x531f15
mov dword [esp + 0x104], 1
lea eax, [ebx + 0x10]
mov dword [esp + 0x100], eax
mov eax, 1
jmp 0x5341b3
fld qword [edi + 0x10]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
cmp ax, 0x100
je 0x537f4f
mov dword [esp + 0x104], 4
mov eax, 4
lea edx, [edi + 0x10]
mov dword [esp + 0x100], edx
cmp eax, 5
je 0x536369
mov edx, dword [esp + 0xf8]
cmp edx, 2
je 0x5399d6
jg 0x537cae
dec edx
jne 0x537c8a
jmp 0x53999b
fstp st(0)
jmp 0x537c8a
fstp st(0)
xor edi, edi
mov edx, dword [esp + 0x78]
mov dl, byte [edx]
mov al, dl
sub eax, 0x2d
cmp al, 5
jbe 0x537ca4
xor eax, eax
jmp 0x536375
movzx eax, al
jmp dword [eax*4 + 0x616f98]
cmp edx, 3
je 0x539e0b
cmp edx, 4
jne 0x537c8a
mov edx, dword [esp + 0xfc]
fld qword [edx]
cmp eax, 2
je 0x539cf8
jg 0x539cd8
dec eax
jne 0x537c84
mov eax, dword [esp + 0x100]
fild dword [eax]
jmp 0x537cec
fxch st(1)
jmp 0x537cec
fxch st(1)
jmp 0x537cec
fxch st(1)
fucom st(1)
fnstsw ax
test ah, 0x45
je 0x539cc2
fxch st(1)
fucompp
fnstsw ax
xor edx, edx
test ah, 0x45
sete dl
mov edi, edx
jmp 0x537c8c
mov dword [esp + 0x104], 2
lea eax, [edi + 0x10]
mov dword [esp + 0x100], eax
mov eax, 2
jmp 0x537c6a
mov dword [esp + 0x104], 1
lea eax, [edi + 0x10]
mov dword [esp + 0x100], eax
mov eax, 1
jmp 0x537c6a
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x539042
mov eax, dword [eax + 4]
test eax, eax
je 0x539042
mov dword [esp], ebx
call fcn.004dd020
jmp 0x5308aa
mov dword [esp + 0x104], 2
mov eax, dword [esp + 0xbc]
add eax, 0x10
mov dword [esp + 0x100], eax
mov esi, 2
jmp 0x534017
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x532225
mov dword [esp], edi
call fcn.004dd280
mov edx, eax
jmp 0x533738
mov dword [esp], ebx
mov dword [esp + 0x50], edx
call fcn.004dd280
mov edx, dword [esp + 0x50]
jmp 0x533743
mov dword [esp], edx
call fcn.004dd280
jmp 0x5319bd
call fcn.004dcd40
mov eax, dword [0x67b764]
mov edx, dword [esp + 0x104]
jmp 0x531d6f
lea edx, [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004dd4d4
mov edi, eax
jmp 0x530f05
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004dd4d4
mov ebx, eax
jmp 0x534572
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x534515
mov dword [esp], eax
call fcn.004dd020
jmp 0x53434e
mov edx, dword [edi + 0xc]
test edx, edx
je 0x537f16
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x537f16
mov dword [esp], edi
call fcn.004dd020
mov eax, dword [esp + 0xf0]
jmp 0x5373b8
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x5345ee
call fcn.004dcd40
mov edx, dword [0x67b764]
mov eax, dword [esp + 0xf0]
jmp 0x534657
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x5349a0
mov dword [esp], str.mis_issued_dictDone_
call fcn.00507f04
jmp 0x531c67
call fcn.004dcd40
mov ebx, dword [0x67b764]
jmp 0x531e74
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004dd4d4
mov esi, eax
jmp 0x533b49
lea eax, [esp + 0x104]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004dd4d4
mov edx, dword [esp + 0x104]
jmp 0x533b5e
lea edi, [esp + 0x104]
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.004dd4d4
mov edx, dword [esp + 0x104]
jmp 0x534587
mov edx, dword [edi + 4]
test edx, edx
je 0x537f34
cmp edx, dword [0x5dea6c]
je 0x537f34
mov dword [esp], edx
call fcn.004edc48
mov eax, dword [esp + 0xf0]
mov dword [edi + 8], 0xffffffff
mov edx, dword [0x67b764]
mov dword [edi + 0x10], edx
mov dword [0x67b764], edi
jmp 0x5373b8
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x537c57
fstp qword [esp + 0x50]
call fcn.004dcd40
mov eax, dword [0x67b764]
fld qword [esp + 0x50]
jmp 0x536ad8
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 4]
test eax, eax
je 0x537faf
cmp eax, dword [0x5dea6c]
je 0x537fa1
mov dword [esp], eax
fstp qword [esp + 0x50]
call fcn.004edc48
fld qword [esp + 0x50]
mov ecx, dword [esp + 0x88]
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x537fd1
mov eax, dword [eax + 4]
test eax, eax
je 0x537fd1
mov dword [esp], ecx
fstp qword [esp + 0x50]
call eax
fld qword [esp + 0x50]
mov ecx, dword [esp + 0x88]
fstp qword [ecx + 0x10]
mov dword [ecx + 0xc], 0x5dea44
inc dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
mov ebx, dword [esi]
mov dword [esp + 0x88], 0
jmp 0x5319dc
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
fstp qword [esp + 4]
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.0052fefc
mov dword [esp + 0x94], 1
jmp 0x530368
mov eax, dword [esp + 0x104]
jmp 0x533392
mov ebx, dword [esp + 0x190]
mov ecx, dword [ebx + 0x218]
test ecx, ecx
je 0x53041f
jmp 0x530b80
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0x50], eax
call fcn.004f2ac0
mov ecx, dword [esp + 0xfc]
mov esi, dword [ecx]
mov eax, dword [esp + 0x50]
jmp 0x531817
mov dword [esp + 0x104], 5
mov esi, 5
jmp 0x537be8
dec esi
jne 0x537987
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea1c
je 0x5381e4
cmp eax, 0x5dea30
je 0x5381c2
lea eax, [esp + 0x118]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de214
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 0xc]
cmp eax, 0x5dea1c
je 0x5381a9
cmp eax, 0x5dea30
je 0x53818e
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de214
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
mov ebx, dword [esp + 0x118]
imul ebx, edx
mov edx, dword [esp + 0x11c]
imul edx, eax
add ebx, edx
mul dword [esp + 0x118]
add edx, ebx
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jg 0x536e3c
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004de0e4
inc dword [esp + 0x78]
jmp 0x537fe6
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x537839
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 0x10]
cdq
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
jmp 0x53812a
mov eax, dword [ecx + 0x10]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
jmp 0x53812a
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x118], eax
mov ebx, eax
sar ebx, 0x1f
mov dword [esp + 0x11c], ebx
jmp 0x5380da
mov esi, dword [ecx + 0x10]
mov edi, dword [ecx + 0x14]
mov dword [esp + 0x118], esi
mov dword [esp + 0x11c], edi
jmp 0x5380da
mov eax, dword [esp + 0x74]
test eax, eax
js 0x53822e
mov edx, dword [esp + 0x74]
or edx, dword [esp + 0x70]
je 0x538213
test ecx, ecx
js 0x538233
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
jmp 0x536e26
cmp ecx, 0
jle 0x53827f
mov eax, esi
mov edx, edi
add eax, 0xffffffff
adc edx, 0xffffffff
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
mov edi, dword [esp + 0x88]
imul edi, ecx
mov edx, dword [esp + 0x8c]
imul edx, ebx
add edi, edx
mov eax, dword [esp + 0x88]
mul ebx
mov dword [esp + 0xa8], eax
add edx, edi
mov dword [esp + 0xac], edx
jmp 0x536e26
jl 0x538213
cmp ebx, 0
ja 0x538233
jmp 0x538213
mov edx, ecx
imul edx, esi
mov eax, edi
imul eax, ebx
add eax, edx
mov dword [esp + 0x88], eax
mov eax, ebx
mul esi
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x88]
add edx, eax
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x74]
xor edx, dword [esp + 0xac]
mov eax, dword [esp + 0x70]
xor eax, dword [esp + 0xa8]
or edx, eax
jne 0x538233
jmp 0x536e26
lea esi, [esp + 0x150]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
mov al, 1
cmp dword [esp + 0x74], 0
jle 0x538473
mov edx, dword [esp + 0x158]
test edx, edx
sete dl
cmp al, dl
je 0x538462
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
lea ebx, [esp + 0x160]
mov dword [esp], ebx
call fcn.00527758
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], esi
call fcn.00588414
mov dword [esp], ebx
call fcn.005226b8
jmp 0x537ba5
lea esi, [esp + 0x130]
mov dword [esp + 0x70], esi
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4c4
lea edx, [esp + 0x140]
mov dword [esp + 0x98], edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4c4
lea esi, [esp + 0x150]
mov dword [esp], esi
call fcn.0053b204
lea ebx, [esp + 0x160]
mov dword [esp], ebx
call fcn.0053b204
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x70]
mov dword [esp], edx
call fcn.005884c4
mov eax, dword [esp + 0x160]
test eax, eax
je 0x538415
mov ecx, dword [esp + 0x148]
cmp dword [esp + 0x168], ecx
je 0x538415
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.00588414
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00587f80
mov dword [esp], ebx
call fcn.005226b8
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.005226b8
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
call fcn.005226b8
cmp dword [edi], 1
jg 0x537ba5
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.004de590
inc dword [esp + 0x78]
jmp 0x537fe6
mov dword [esp], esi
call fcn.005226b8
inc dword [esp + 0x78]
jmp 0x537fe6
jl 0x538480
cmp dword [esp + 0x70], 0
ja 0x538301
xor eax, eax
jmp 0x538301
mov edx, dword [esp + 0xfc]
mov esi, dword [edx]
test esi, esi
je 0x534081
cmp eax, 1
je 0x53859e
cmp eax, 2
jne 0x538525
mov eax, dword [esp + 0x100]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov bl, 1
cmp edx, 0
jle 0x53851a
test esi, esi
setg cl
cmp bl, cl
jne 0x5384f3
inc dword [esp + 0x78]
jmp 0x537fe6
mov edx, dword [esp + 0x100]
mov ecx, dword [edx]
test ecx, ecx
je 0x5302ff
cmp ecx, 1
je 0x534081
cmp ecx, 0xffffffff
jne 0x536d74
jmp 0x534081
mov edi, esi
sar edi, 0x1f
add esi, eax
adc edi, edx
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
jl 0x538521
cmp eax, 0
ja 0x5384b9
xor ebx, ebx
jmp 0x5384b9
lea edi, [esp + 0x150]
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
test esi, esi
setg al
mov edx, dword [esp + 0x158]
test edx, edx
sete dl
cmp al, dl
je 0x538610
mov dword [esp + 4], esi
lea ebx, [esp + 0x160]
mov dword [esp], ebx
call fcn.00527668
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], edi
call fcn.00588414
mov dword [esp], ebx
call fcn.005226b8
mov dword [esp], edi
call fcn.004de8a4
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
mov eax, esi
cdq
idiv ecx
cmp eax, 0
jl 0x538605
jne 0x5385fe
test esi, esi
js 0x5385f9
test ecx, ecx
js 0x5385fd
xor edx, edx
sub esi, edx
mov eax, dword [0x67b764]
test eax, eax
jne 0x5385c9
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov dword [eax + 0x10], esi
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
test ecx, ecx
jle 0x5385b2
dec eax
mov edx, ecx
imul edx, eax
jmp 0x5385b4
mov edx, eax
imul edx, ecx
cmp edx, esi
jne 0x5385fd
jmp 0x5385b4
mov dword [esp], edi
call fcn.005226b8
inc dword [esp + 0x78]
jmp 0x537fe6
mov edx, dword [esp + 0x7c]
mov eax, dword [edx]
mov dword [esp + 0x100], eax
jmp 0x530864
mov edx, dword [eax + 0xc]
test edx, edx
je 0x538702
mov edx, dword [edx + 4]
test edx, edx
je 0x538702
mov dword [esp], eax
call fcn.004dd020
jmp 0x537348
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.004de590
inc dword [esp + 0x78]
jmp 0x537fe6
cmp ecx, 1
je 0x53874f
cmp ecx, 2
je 0x53873a
mov dword [esp + 4], edx
mov dword [esp], edx
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov edx, dword [esp + 0x50]
mov dword [esp + 8], edx
mov dword [esp + 4], 1
mov dword [esp], edx
call fcn.0053b5bc
mov dword [esp + 4], edi
mov dword [esp], edi
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.0058977c
mov dword [esp + 4], ebx
mov dword [esp], ebx
call fcn.0053b8f8
mov dword [esp + 8], ebx
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.0053b5bc
jmp 0x536d2b
mov edx, dword [eax + 4]
test edx, edx
je 0x538720
cmp edx, dword [0x5dea6c]
je 0x538720
mov dword [esp], edx
call fcn.004edc48
mov eax, dword [esp + 0x100]
mov dword [eax + 8], 0xffffffff
mov edx, dword [0x67b764]
mov dword [eax + 0x10], edx
mov dword [0x67b764], eax
jmp 0x537348
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.00589dec
jmp 0x536d2b
mov dword [esp + 4], edi
mov dword [esp], edi
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.00589fd4
mov dword [esp + 8], ebx
mov dword [esp + 4], ebx
mov dword [esp], edi
jmp 0x5386d8
cmp ecx, 1
je 0x538892
cmp ecx, 2
je 0x53887d
mov dword [esp + 4], edx
mov dword [esp], edx
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov edx, dword [esp + 0x50]
mov dword [esp + 8], edx
mov dword [esp + 4], 1
mov dword [esp], edx
call fcn.0053b5bc
mov dword [esp + 4], edi
mov dword [esp], edi
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.00589dec
jmp 0x5386dd
cmp ecx, 1
je 0x538924
cmp ecx, 2
je 0x53890f
mov dword [esp + 4], edx
mov dword [esp], edx
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov edx, dword [esp + 0x50]
mov dword [esp + 8], edx
mov dword [esp + 4], 1
mov dword [esp], edx
call fcn.0053b5bc
mov dword [esp + 4], edi
mov dword [esp], edi
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.00589fd4
jmp 0x536d2b
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.0058977c
jmp 0x536d2b
mov dword [esp + 4], edi
mov dword [esp], edi
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.00589fd4
mov dword [esp + 8], ebx
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.0058977c
jmp 0x536d2b
mov ecx, 1
mov edi, esi
mov edx, dword [esp + 0x98]
jmp 0x536ce7
call fcn.0053b8c8
xor ecx, ecx
inc eax
setne cl
mov edi, dword [esp + 0x98]
mov edx, esi
jmp 0x536ce7
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], edx
call fcn.00589fd4
jmp 0x536d2b
mov dword [esp + 4], edi
mov dword [esp], edi
mov dword [esp + 0x50], edx
call fcn.0053b8f8
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0053b5bc
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.00589fd4
jmp 0x5386dd
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
call fcn.00588e1c
jmp case.0x5379fb.332
mov dword [esp + 8], esi
mov edi, dword [esp + 0x98]
mov dword [esp + 4], edi
mov edx, dword [esp + 0x70]
mov dword [esp], edx
call fcn.00588414
jmp case.0x5379fb.332
mov edx, dword [eax + 4]
test edx, edx
je 0x5389c0
cmp edx, dword [0x5dea6c]
je 0x5389c0
mov dword [esp], edx
mov dword [esp + 0x50], eax
call fcn.004edc48
mov eax, dword [esp + 0x50]
mov dword [eax + 8], 0xffffffff
mov edx, dword [0x67b764]
mov dword [eax + 0x10], edx
mov dword [0x67b764], eax
jmp 0x531221
call fcn.004dcd40
mov edi, dword [0x67b764]
mov edx, dword [esp + 0x50]
jmp 0x5369ae
call fcn.004dcd40
mov eax, dword [0x67b764]
mov ebx, dword [esp + 0x194]
mov ecx, dword [ebx + 0x54]
jmp 0x5366a0
mov dword [esp], ecx
call fcn.004dd280
mov edx, dword [esp + 0x104]
jmp 0x53668a
xor ecx, ecx
xor edi, edi
xor ebx, ebx
jmp 0x534070
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0053b8c8
inc eax
sete al
movzx eax, al
mov edi, eax
mov dword [esp + 8], ebx
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.0053b128
xor ecx, ecx
mov eax, dword [esp + 0x160]
test eax, eax
setne cl
mov dword [esp], ebx
mov dword [esp + 0x3c], ecx
call fcn.005226b8
mov eax, dword [esp + 0xf8]
xor ebx, ebx
mov ecx, dword [esp + 0x3c]
jmp 0x534070
mov ebx, dword [esp + 0x100]
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shr edi, 0x1f
and ecx, 1
xor ebx, ebx
jmp 0x534070
mov ebx, dword [esp + 0x100]
mov ebx, dword [ebx]
test ebx, ebx
je 0x539121
cmp ebx, 1
je 0x5384c2
mov edi, ebx
shr edi, 0x1f
mov ecx, ebx
and ecx, 1
jmp 0x534070
cmp dword [esp + 0x104], 1
jne 0x538bf3
mov dword [esp + 0xa8], 0
cmp eax, 2
jne 0x537987
mov eax, dword [esp + 0xfc]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edi
cmp ebx, 0x10
jg 0x538b83
mov esi, dword [ebx*8 + 0x617270]
mov edi, dword [ebx*8 + 0x617274]
cmp dword [esp + 0x74], edi
jg 0x538b83
jl 0x538b3a
cmp dword [esp + 0x70], esi
ja 0x538b83
neg esi
adc edi, 0
neg edi
cmp dword [esp + 0x74], edi
jl 0x538b83
jg 0x538b4f
cmp dword [esp + 0x70], esi
jb 0x538b83
mov ecx, dword [esp + 0x74]
imul ecx, dword [esp + 0x70]
shl ecx, 1
mov eax, dword [esp + 0x70]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov dword [esp + 0x8c], edx
sub ebx, 3
cmp ebx, 0xd
ja case.default.0x538b7c
jmp dword [ebx*4 + 0x616fb0]
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
add esi, 0xfffffffd
adc edi, 0xffffffff
cmp edi, 0
ja 0x538da6
cmp esi, 0xa
ja 0x538da6
cmp ebx, 0x5c
jg 0x538da6
mov si, word [esi + esi + 0x6172f8]
lea esi, [esi + ebx - 0x11]
mov edi, dword [esp + 0x70]
sub edi, 2
cmp si, word [edi + edi + 0x6172f8]
jae 0x538da6
mov ecx, dword [esp + 0x88]
movzx esi, si
cmp dword [ecx], 1
mov eax, dword [esi*8 + 0x617320]
mov edx, dword [esi*8 + 0x617324]
jg 0x536e3c
jmp 0x538159
mov dword [esp + 4], 0xffffffff
mov dword [esp], str.exponent_too_large
jmp 0x537219
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x88]
imul ecx, edx
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, edx
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, edx
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x70]
mul dword [esp + 0x88]
mov dword [esp + 0x88], eax
add edx, ecx
mov dword [esp + 0x8c], edx
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004de1a8
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
mov dword [esp + 0x70], eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, edx
shl ecx, 1
mov eax, dword [esp + 0x70]
mul eax
mov dword [esp + 0x70], eax
add edx, ecx
mov dword [esp + 0x74], edx
mov ecx, dword [esp + 0x70]
imul ecx, edx
shl ecx, 1
mov eax, dword [esp + 0x70]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov dword [esp + 0x8c], edx
jmp case.default.0x538b7c
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x88]
imul ecx, edx
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, edx
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x70]
mul dword [esp + 0x88]
jmp 0x538d07
mov dword [esp + 0x98], 0xfffffffd
mov dword [esp + 0x9c], 0xffffffff
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
sub dword [esp + 0x98], esi
sbb dword [esp + 0x9c], edi
mov eax, dword [esp + 0x9c]
test eax, eax
js 0x537987
mov esi, 0xfffffffe
mov edi, 0xffffffff
sub esi, dword [esp + 0x70]
sbb edi, dword [esp + 0x74]
cmp edi, 0
jg 0x537987
jl 0x538e07
cmp esi, 0xb
ja 0x537987
cmp ebx, 0x5c
jg 0x537987
mov eax, dword [esp + 0x98]
mov ax, word [eax + eax + 0x6172f8]
lea eax, [eax + ebx - 0x11]
cmp ax, word [esi + esi + 0x6172f8]
jae 0x537987
movzx eax, ax
mov edx, dword [eax*8 + 0x617324]
mov eax, dword [eax*8 + 0x617320]
test ecx, ecx
je 0x538e4d
neg eax
adc edx, 0
neg edx
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jg 0x536e3c
jmp 0x538159
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, edx
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
jmp 0x538c4a
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, edx
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
jmp 0x538d07
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
jmp 0x538c4a
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
jmp 0x538d05
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
jmp 0x538e8c
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
jmp 0x538ed4
mov ecx, dword [esp + 0x8c]
jmp 0x538c55
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
mov dword [esp + 0x88], eax
add edx, ecx
mov dword [esp + 0x8c], edx
jmp case.default.0x538b7c
mov esi, dword [esp + 0xa8]
mov edi, esi
sar edi, 0x1f
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x88]
imul edx, edi
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0xa8]
mov dword [esp + 0x88], eax
add edx, ecx
mov dword [esp + 0x8c], edx
jmp case.default.0x538b7c
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
imul edx, dword [esp + 0x88]
add ecx, edx
mov eax, dword [esp + 0x88]
mul dword [esp + 0x70]
mov dword [esp + 0x88], eax
add edx, ecx
mov ecx, edx
jmp 0x538e69
mov ecx, dword [esp + 0x8c]
imul ecx, dword [esp + 0x88]
shl ecx, 1
mov eax, dword [esp + 0x88]
mul eax
jmp 0x538cf2
mov dword [esp + 4], esi
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004de590
inc dword [esp + 0x78]
jmp 0x537fe6
mov eax, dword [ebx + 4]
test eax, eax
je 0x539059
cmp eax, dword [0x5dea6c]
je 0x539059
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
jmp 0x5308aa
mov eax, dword [esp + 0xfc]
mov eax, dword [eax]
mov dword [esp + 0xa8], eax
test edi, edi
jne 0x539412
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x534081
cmp dword [esp + 0xa8], 1
je 0x539121
cmp dword [esp + 0xa8], 0xffffffff
je 0x53943d
cmp dword [esp + 0x104], 1
jne 0x538bf3
cmp dword [esp + 0xa8], 2
je 0x5393a0
cmp dword [esp + 0xa8], 0xfffffffe
je 0x539322
cmp ebx, 8
jg 0x5391df
mov eax, dword [ebx*4 + 0x617190]
cmp dword [esp + 0xa8], eax
jg 0x5391df
neg eax
cmp dword [esp + 0xa8], eax
jl 0x5391df
mov edi, dword [esp + 0xa8]
imul edi, edi
sub ebx, 3
cmp ebx, 5
ja case.default.0x53911a
jmp dword [ebx*4 + 0x616fe8]
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + 8]
mov dword [esp + 0xf0], eax
inc dword [eax]
inc dword [esp + 0x78]
jmp 0x5308d0
imul edi, dword [esp + 0xa8]
imul edi, edi
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jle 0x539197
mov eax, dword [0x67b764]
test eax, eax
jne 0x539167
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov dword [eax + 0x10], edi
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004ddda4
jmp 0x5384c2
imul edi, edi
imul edi, edi
jmp case.default.0x53911a
imul edi, dword [esp + 0xa8]
imul edi, edi
imul edi, dword [esp + 0xa8]
jmp case.default.0x53911a
imul edi, edi
imul edi, dword [esp + 0xa8]
jmp case.default.0x53911a
mov eax, dword [esp + 0xa8]
sub eax, 3
cmp eax, 7
ja 0x539297
cmp ebx, 0x29
jg 0x539297
mov di, word [eax + eax + 0x6171b4]
lea edi, [edi + ebx - 9]
mov esi, dword [esp + 0xa8]
cmp di, word [esi + esi + 0x6171b0]
jae 0x539297
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jle 0x539271
mov eax, dword [0x67b764]
test eax, eax
jne 0x539237
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
movzx edi, di
mov edx, dword [edi*4 + 0x6171e0]
mov dword [eax + 0x10], edx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
movzx edi, di
mov eax, dword [edi*4 + 0x6171e0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004ddda4
inc dword [esp + 0x78]
jmp 0x537fe6
mov edi, 0xfffffffd
sub edi, dword [esp + 0xa8]
js 0x53930d
mov eax, 0xfffffffe
sub eax, dword [esp + 0xa8]
cmp eax, 8
jg 0x53930d
cmp ebx, 0x29
jg 0x53930d
mov di, word [edi + edi + 0x6171b4]
lea edi, [edi + ebx - 9]
cmp di, word [eax + eax + 0x6171b4]
jae 0x53930d
movzx edi, di
mov ebx, dword [edi*4 + 0x6171e0]
test ecx, ecx
je 0x5392e1
neg ebx
mov ecx, dword [esp + 0x88]
cmp dword [ecx], 1
jg 0x533d81
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004ddda4
inc dword [esp + 0x78]
jmp 0x537fe6
mov eax, dword [esp + 0xa8]
cdq
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
jmp 0x538b19
cmp ecx, 1
sbb esi, esi
and esi, 2
dec esi
cmp ebx, 0x1e
ja 0x53937b
mov edx, dword [0x67b764]
test edx, edx
jne 0x539345
call fcn.004dcd40
mov edx, dword [0x67b764]
mov dword [esp + 0xf0], edx
mov ecx, dword [edx + 0x10]
mov dword [0x67b764], ecx
mov dword [edx + 4], 0
mov eax, esi
mov cl, bl
shl eax, cl
mov dword [edx + 0x10], eax
mov dword [edx + 0xc], 0x5dea30
mov dword [edx], 1
inc dword [esp + 0x78]
jmp 0x5308d0
cmp ebx, 0x3e
ja 0x537987
mov eax, esi
cdq
mov cl, bl
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x536e3c
mov edx, eax
xor eax, eax
jmp 0x536e3c
cmp ebx, 0x1e
ja 0x5393f1
mov eax, dword [0x67b764]
test eax, eax
jne 0x5393b8
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov edx, 1
mov cl, bl
shl edx, cl
mov dword [eax + 0x10], edx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
cmp ebx, 0x3e
ja 0x537987
mov cl, bl
xor eax, eax
xor edx, edx
test cl, 0x20
sete al
setne dl
shl eax, cl
shl edx, cl
jmp 0x536e3c
mov edx, dword [esp + 0xa8]
test edx, edx
je 0x539851
cmp dword [esp + 0xa8], 1
je 0x539121
cmp dword [esp + 0xa8], 0xffffffff
jne 0x534081
test ecx, ecx
jne 0x53421d
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + 8]
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x534260
mov dword [esp + 4], 1
add edx, edi
mov dword [esp], edx
call fcn.004e8edc
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x5344d0
mov dword [esp], eax
call fcn.004dd020
jmp 0x5360b2
call fcn.004dcd40
mov edi, dword [0x67b764]
jmp 0x5365b4
fld qword [esp + 0x108]
fldz
fxch st(1)
fucom st(1)
fnstsw ax
and ah, 0x45
fld qword [esp + 0x110]
cmp ah, 0x40
jne 0x539531
fxch st(2)
fucomp st(2)
fnstsw ax
test ah, 0x45
je 0x53984d
fxch st(1)
jmp 0x539535
fstp st(2)
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call sub.msvcrt.dll_pow
jmp 0x536aa7
mov eax, dword [ebx + 4]
test eax, eax
je 0x53955d
cmp eax, dword [0x5dea6c]
je 0x53955d
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
mov dword [0x67b764], ebx
mov ebx, 1
jmp 0x5311e8
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.004de0e4
inc dword [esp + 0x78]
jmp 0x537fe6
mov eax, dword [esp + 0x120]
or eax, dword [esp + 0x118]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x124]
or eax, dword [esp + 0x11c]
mov dword [esp + 0xcc], eax
jmp 0x537947
mov eax, dword [esp + 0x120]
and eax, dword [esp + 0x118]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x124]
and eax, dword [esp + 0x11c]
mov dword [esp + 0xcc], eax
jmp 0x537947
mov eax, dword [esp + 0x120]
xor eax, dword [esp + 0x118]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x124]
xor eax, dword [esp + 0x11c]
mov dword [esp + 0xcc], eax
jmp 0x537947
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x120], eax
mov ebx, eax
sar ebx, 0x1f
mov dword [esp + 0x124], ebx
jmp 0x537913
mov eax, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
jmp 0x537913
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x118], eax
mov esi, eax
sar esi, 0x1f
mov dword [esp + 0x11c], esi
jmp 0x5378df
mov eax, dword [ecx + 0x10]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], edx
jmp 0x5378df
fld qword [esp + 0x108]
fdiv qword [esp + 0x110]
jmp 0x536aa7
fld qword [esp + 0x108]
fmul qword [esp + 0x110]
jmp 0x536aa7
fld qword [esp + 0x108]
fsub qword [esp + 0x110]
jmp 0x536aa7
fld qword [esp + 0x108]
fadd qword [esp + 0x110]
jmp 0x536aa7
mov dword [esp], edx
call fcn.004dd280
jmp 0x5367f3
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0053b8c8
dec eax
sete al
movzx eax, al
mov dword [esp], ebx
mov dword [esp + 0x50], eax
call fcn.005226b8
mov eax, dword [esp + 0x50]
test eax, eax
je 0x53421d
mov ebx, dword [esp + 0xb8]
mov eax, dword [ebx + 4]
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x534260
mov edx, dword [esp + 0xfc]
mov eax, 1
cmp dword [edx + 4], 0
jg 0x539793
jl 0x5397cd
cmp dword [edx], 0
ja 0x539793
xor eax, eax
jmp 0x539793
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x535c6c
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x535ae9
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x536567
mov edx, dword [edi + 4]
test edx, edx
je 0x53981c
cmp edx, dword [0x5dea6c]
je 0x53981c
mov dword [esp], edx
call fcn.004edc48
mov eax, dword [esp + 0xf0]
mov dword [edi + 8], 0xffffffff
mov edx, dword [0x67b764]
mov dword [edi + 0x10], edx
mov dword [0x67b764], edi
jmp 0x536481
mov edx, dword [esp + 0xac]
xor edx, dword [esp + 0x34]
jns 0x532c4a
jmp 0x536f31
fstp st(0)
fstp st(0)
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x10], esi
mov dword [esp + 4], 0xffffffff
mov dword [esp], str.exponentiation_of_zero_by_negative_power
call fcn.004eaf6c
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], str.exponentiation_of_zero_by_negative_power
mov dword [esp + 8], str.DOMAIN
mov dword [esp + 4], str.ARITH
mov dword [esp], ebx
call fcn.004e13a4
mov dword [esp + 0x94], 1
jmp 0x530368
xor ebx, edx
jmp 0x533d74
cmp dword [esp + 0x140], 1
jle 0x539979
mov dword [esp + 4], 0xffffffff
mov dword [esp], str.exponent_too_large
call fcn.004eaf6c
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
call fcn.004e0b5c
mov edi, dword [esp + 0x70]
mov dword [esp], edi
call fcn.005226b8
mov edx, dword [esp + 0x98]
mov dword [esp], edx
call fcn.005226b8
mov dword [esp], esi
call fcn.005226b8
jmp 0x530368
mov eax, dword [esp + 0x140]
test eax, eax
jne 0x537b05
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.005226b8
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
call fcn.005226b8
mov dword [esp], esi
call fcn.005226b8
jmp 0x5302ff
mov dword [esp + 8], esi
mov edi, dword [esp + 0x98]
mov dword [esp + 4], edi
mov edx, dword [esp + 0x70]
mov dword [esp], edx
call fcn.00588100
jmp case.0x5379fb.332
mov dword [esp + 8], esi
mov eax, dword [esp + 0x14c]
mov eax, dword [eax]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.00589ab0
jmp case.0x5379fb.332
mov edx, dword [esp + 0xfc]
mov edx, dword [edx]
cmp eax, 2
je 0x539c22
jg 0x539bf6
dec eax
jne 0x537c8a
mov eax, dword [esp + 0x100]
cmp edx, dword [eax]
jl 0x539cce
setg al
movzx eax, al
mov edi, eax
jmp 0x537c8c
mov edx, dword [esp + 0xfc]
mov ecx, dword [edx]
mov ebx, dword [edx + 4]
cmp eax, 2
je 0x539b56
jg 0x539a2c
dec eax
jne 0x537c8a
mov eax, dword [esp + 0x100]
mov esi, dword [eax]
mov edi, esi
sar edi, 0x1f
cmp ebx, edi
jl 0x539cce
jg 0x539a14
cmp ecx, esi
jb 0x539cce
mov eax, 1
cmp ebx, edi
jg 0x539a25
jl 0x539a23
cmp ecx, esi
ja 0x539a25
xor eax, eax
mov edi, eax
jmp 0x537c8c
cmp eax, 3
je 0x539baf
cmp eax, 4
jne 0x537c8a
mov eax, dword [esp + 0x100]
fld qword [eax]
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xe4], ebx
fild qword [esp + 0xe0]
fnstcw word [esp + 0xee]
mov ax, word [esp + 0xee]
mov ah, 0xc
mov word [esp + 0xec], ax
fld st(0)
fldcw word [esp + 0xec]
fistp qword [esp + 0xe0]
fldcw word [esp + 0xee]
mov esi, dword [esp + 0xe0]
mov edi, dword [esp + 0xe4]
mov eax, edi
xor eax, ebx
xor esi, ecx
or eax, esi
je 0x537ce2
fxch st(1)
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
fst qword [esp]
mov dword [esp + 0x3c], ecx
fstp qword [esp + 0x50]
fstp qword [esp + 0x40]
call sub.msvcrt.dll_modf
fldz
fxch st(1)
fucompp
fnstsw ax
and ah, 0x45
xor ah, 0x40
mov ecx, dword [esp + 0x3c]
fld qword [esp + 0x50]
fld qword [esp + 0x40]
jne 0x537ce6
fstp st(0)
fld dword [0x617678]
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x539b9f
fld dword [0x61767c]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539cc8
fnstcw word [esp + 0xee]
mov ax, word [esp + 0xee]
mov ah, 0xc
mov word [esp + 0xec], ax
fldcw word [esp + 0xec]
fistp qword [esp + 0xe0]
fldcw word [esp + 0xee]
mov esi, dword [esp + 0xe0]
mov edi, dword [esp + 0xe4]
jmp 0x539a02
mov eax, dword [esp + 0x100]
mov esi, dword [eax]
mov edi, dword [eax + 4]
jmp 0x539a02
fld qword [0x617668]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539b8d
fld qword [0x617670]
fucomp st(1)
fnstsw ax
test ah, 0x45
jne 0x539e65
fldz
fxch st(1)
fucompp
fnstsw ax
test ah, 0x45
je 0x539ba5
jmp 0x539cce
fstp st(0)
jmp 0x539ba5
fstp st(0)
mov edi, 1
jmp 0x537c8c
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4e0
jmp 0x539bce
fstp st(0)
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0053b8c8
inc eax
sete al
movzx eax, al
lea edi, [eax + eax - 1]
mov dword [esp], ebx
call fcn.005226b8
jmp 0x537c8c
cmp eax, 3
je 0x539c3a
cmp eax, 4
jne 0x537c8a
mov eax, dword [esp + 0x100]
fld qword [eax]
mov dword [esp + 0xe8], edx
fild dword [esp + 0xe8]
fxch st(1)
jmp 0x537cec
mov eax, dword [esp + 0x100]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ecx, edx
mov ebx, edx
sar ebx, 0x1f
jmp 0x539a02
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0053b8c8
xor edx, edx
inc eax
sete dl
mov edi, edx
lea edi, [edi + edi - 1]
mov dword [esp], ebx
call fcn.005226b8
jmp 0x537c8c
xor eax, eax
dec edi
setne al
jmp 0x536375
xor eax, eax
dec edi
sete al
jmp 0x536375
xor eax, eax
inc edi
sete al
jmp 0x536375
xor eax, eax
test edi, edi
setne al
jmp 0x536375
xor eax, eax
test edi, edi
sete al
jmp 0x536375
xor eax, eax
inc edi
setne al
jmp 0x536375
fstp st(0)
fstp st(0)
jmp 0x539cce
fstp st(0)
jmp 0x539cce
fstp st(0)
mov edi, 0xffffffff
jmp 0x537c8c
cmp eax, 3
je 0x539b67
cmp eax, 4
jne 0x537c88
mov eax, dword [esp + 0x100]
fld qword [eax]
jmp 0x537cec
mov eax, dword [esp + 0x100]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov dword [esp + 0xe0], esi
mov dword [esp + 0xe4], edi
fild qword [esp + 0xe0]
fnstcw word [esp + 0xee]
mov ax, word [esp + 0xee]
mov ah, 0xc
mov word [esp + 0xec], ax
fld st(0)
fldcw word [esp + 0xec]
fistp qword [esp + 0xe0]
fldcw word [esp + 0xee]
mov eax, dword [esp + 0xe0]
mov edx, dword [esp + 0xe4]
xor edx, edi
xor eax, esi
or edx, eax
je 0x537cec
fxch st(1)
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
fst qword [esp]
fxch st(1)
fstp qword [esp + 0x50]
fstp qword [esp + 0x40]
call sub.msvcrt.dll_modf
fldz
fxch st(1)
fucompp
fnstsw ax
and ah, 0x45
xor ah, 0x40
fld qword [esp + 0x50]
fld qword [esp + 0x40]
jne 0x537cea
fstp st(1)
fld dword [0x617678]
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x539ccc
fld dword [0x61767c]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539ba3
fnstcw word [esp + 0xee]
mov ax, word [esp + 0xee]
mov ah, 0xc
mov word [esp + 0xec], ax
fldcw word [esp + 0xec]
fistp qword [esp + 0xe0]
fldcw word [esp + 0xee]
mov ecx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xe4]
jmp 0x539a02
lea esi, [esp + 0x150]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
mov eax, dword [esp + 0x104]
cmp eax, 3
je 0x53a011
jg 0x539f04
dec eax
jge 0x539e46
jmp 0x537c8a
fstp st(0)
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0053b8c8
mov edi, eax
mov dword [esp], esi
call fcn.005226b8
jmp 0x537c8c
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
fstp qword [esp + 0x40]
call fcn.004de4e0
fld qword [0x617680]
fld qword [esp + 0x40]
fxch st(1)
fucomp st(1)
fnstsw ax
test ah, 0x45
jne 0x539eb0
fld dword [0x617688]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539bcc
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
fst qword [esp]
fstp qword [esp + 0x40]
call sub.msvcrt.dll_modf
fldz
fxch st(1)
fucompp
fnstsw ax
and ah, 0x45
cmp ah, 0x40
fld qword [esp + 0x40]
je 0x53a02e
fstp st(0)
mov dword [esp], ebx
call fcn.00525278
mov dword [esp], ebx
fstp qword [esp + 0x50]
call fcn.005226b8
fld qword [esp + 0x50]
fld qword [esp + 0x40]
fxch st(1)
jmp 0x537cec
cmp eax, 4
jne 0x537c8a
mov eax, dword [esp + 0x100]
fld qword [eax]
fld qword [0x617668]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539f38
fld qword [0x617670]
fucomp st(1)
fnstsw ax
test ah, 0x45
jne 0x539f53
fldz
fxch st(1)
fucompp
fnstsw ax
test ah, 0x45
jne 0x539fc9
mov edi, 0xffffffff
jmp 0x539e58
fld qword [0x617680]
fucomp st(1)
fnstsw ax
test ah, 0x45
jne 0x539f79
fld dword [0x617688]
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x539e44
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
fst qword [esp]
fstp qword [esp + 0x50]
call sub.msvcrt.dll_modf
fldz
fxch st(1)
fucompp
fnstsw ax
and ah, 0x45
cmp ah, 0x40
fld qword [esp + 0x50]
je 0x539fd3
fstp st(0)
mov dword [esp], esi
call fcn.00525278
mov dword [esp], esi
fstp qword [esp + 0x40]
call fcn.005226b8
fld qword [esp + 0x50]
fld qword [esp + 0x40]
fxch st(1)
jmp 0x537cec
mov edi, 1
jmp 0x539e58
lea ebx, [esp + 0x160]
mov dword [esp + 0xc], ebx
fstp qword [esp + 4]
mov dword [esp], 0
call fcn.00525110
mov dword [esp + 4], ebx
mov dword [esp], esi
call fcn.00589828
mov edi, eax
mov dword [esp], esi
call fcn.005226b8
mov dword [esp], ebx
call fcn.005226b8
jmp 0x537c8c
lea ebx, [esp + 0x160]
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4e0
jmp 0x539fee
lea esi, [esp + 0x150]
mov dword [esp + 0xc], esi
fstp qword [esp + 4]
mov dword [esp], 0
call fcn.00525110
jmp 0x539fee
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004de0e4
inc dword [esp + 0x78]
jmp 0x537fe6
mov esi, dword [esp + 0x118]
mov edi, dword [esp + 0x11c]
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
mov ecx, eax
mov ebx, edx
add ecx, esi
adc ebx, edi
cmp dword [esp + 0xf8], 2
je 0x53a0af
cmp dword [esp + 0x104], 2
jne 0x537ab6
mov edx, ebx
xor edx, edi
jns 0x537ab6
mov eax, dword [esp + 0x74]
xor eax, edi
jns 0x537987
jmp 0x537ab6
mov ecx, dword [esp + 0x120]
mov dword [esp + 0x70], ecx
mov esi, dword [esp + 0x124]
or ecx, esi
je 0x5302ff
mov ebx, dword [esp + 0x118]
mov dword [esp + 0x98], ebx
mov edi, dword [esp + 0x11c]
lea eax, [edi - 0x80000000]
or eax, ebx
je 0x53a214
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.005cb544
mov ecx, eax
mov ebx, edx
test edx, edx
js 0x53a1de
mov eax, edx
or eax, ecx
jne 0x537ab6
test edi, edi
js 0x53a1c7
or edi, dword [esp + 0x98]
je 0x537ab6
test esi, esi
jns 0x537ab6
add ecx, 0xffffffff
adc ebx, 0xffffffff
jmp 0x537ab6
mov esi, dword [esp + 0x118]
mov edi, dword [esp + 0x11c]
mov edx, dword [esp + 0x120]
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
mov ecx, esi
mov ebx, edi
sub ecx, dword [esp + 0x70]
sbb ebx, dword [esp + 0x74]
cmp dword [esp + 0xf8], 2
je 0x53a1ac
cmp dword [esp + 0x104], 2
jne 0x537ab6
mov eax, ebx
xor eax, edi
jns 0x537ab6
mov edx, dword [esp + 0x74]
xor edx, edi
js 0x537987
jmp 0x537ab6
cmp esi, 0
jg 0x53a159
jl 0x537ab6
cmp dword [esp + 0x70], 0
ja 0x53a159
jmp 0x537ab6
imul esi, eax
mov eax, dword [esp + 0x70]
imul eax, edx
add esi, eax
mov eax, dword [esp + 0x70]
mul ecx
mov dword [esp + 0x70], eax
add edx, esi
mov dword [esp + 0x74], edx
xor edi, edx
mov eax, dword [esp + 0x70]
xor eax, dword [esp + 0x98]
or edi, eax
jne 0x53a159
jmp 0x537ab6
mov eax, dword [esp + 0x70]
and eax, esi
inc eax
jne 0x53a107
jmp 0x537987
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x120], eax
mov ebx, eax
sar ebx, 0x1f
mov dword [esp + 0x124], ebx
jmp 0x537a94
mov esi, dword [ecx + 0x10]
mov edi, dword [ecx + 0x14]
mov dword [esp + 0x120], esi
mov dword [esp + 0x124], edi
jmp 0x537a94
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x118], eax
mov ebx, eax
sar ebx, 0x1f
mov dword [esp + 0x11c], ebx
jmp 0x537a52
mov esi, dword [ecx + 0x10]
mov edi, dword [ecx + 0x14]
mov dword [esp + 0x118], esi
mov dword [esp + 0x11c], edi
jmp 0x537a52
mov dword [esp + 0xf0], ebx
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp], ebx
call fcn.004de0e4
jmp 0x532cd1
cmp esi, eax
jle 0x53a2df
mov esi, eax
mov dword [esp + 8], esi
mov eax, dword [edi + 4]
mov dword [esp + 4], eax
mov eax, dword [ebx + 4]
mov dword [esp], eax
call sub.msvcrt.dll_memcmp
jmp 0x533b7b
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov dword [esp], 1
call fcn.004df428
mov dword [esp + 0x100], eax
jmp 0x530864
or ebx, edx
jmp 0x533d74
and ebx, edx
jmp 0x533d74
mov eax, dword [esp + 0xbc]
test eax, eax
je 0x5309ec
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
dec eax
mov edx, dword [esp + 0x70]
mov dword [edx], eax
test eax, eax
jg 0x5309ec
mov eax, dword [edx + 0xc]
test eax, eax
je 0x53a39e
mov eax, dword [eax + 4]
test eax, eax
je 0x53a39e
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.004dd020
mov dword [esp + 0x94], 1
jmp 0x530368
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x53759f
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 4]
test eax, eax
je 0x53a3b9
cmp eax, dword [0x5dea6c]
je 0x53a3b9
mov dword [esp], eax
call fcn.004edc48
mov eax, dword [esp + 0x70]
mov dword [eax + 8], 0xffffffff
mov eax, dword [0x67b764]
mov edx, dword [esp + 0x70]
mov dword [edx + 0x10], eax
mov dword [0x67b764], edx
mov dword [esp + 0x94], 1
jmp 0x530368
mov dword [esp + 0xf0], ebx
mov eax, dword [ebx + 4]
test eax, eax
je 0x53a40b
cmp eax, dword [0x5dea6c]
je 0x53a404
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 4], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x53a41e
mov eax, dword [eax + 4]
test eax, eax
je 0x53a41e
mov dword [esp], ebx
call eax
mov dword [ebx + 0x10], esi
mov dword [ebx + 0xc], 0x5dea30
jmp 0x532cd1
mov ecx, dword [esp + 0x98]
xor ecx, eax
js 0x537584
mov dword [esp + 0x70], eax
mov esi, eax
sar esi, 0x1f
mov dword [esp + 0x74], esi
mov eax, dword [ebx]
cmp eax, 1
jle 0x53a4c5
dec eax
mov dword [ebx], eax
mov eax, dword [esp + 0x98]
cdq
mov ecx, eax
mov ebx, edx
add ecx, dword [esp + 0x70]
adc ebx, dword [esp + 0x74]
jmp 0x536f47
mov dword [esp + 0x50], edx
call fcn.004dcd40
mov eax, dword [0x67b764]
mov edx, dword [esp + 0x50]
jmp 0x5356ea
call fcn.004ddcb8
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.00516438
mov ebx, 1
jmp 0x5311f7
mov eax, dword [esp + 0xfc]
mov edx, dword [eax]
xor eax, eax
test edx, edx
setg al
jmp 0x539793
mov dword [esp + 0xf0], ebx
mov eax, dword [ebx + 4]
test eax, eax
je 0x53a4ea
cmp eax, dword [0x5dea6c]
je 0x53a4e3
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 4], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x53a4fd
mov eax, dword [eax + 4]
test eax, eax
je 0x53a4fd
mov dword [esp], ebx
call eax
mov edx, dword [esp + 0x98]
mov ecx, edx
sar ecx, 0x1f
mov esi, edx
mov edi, ecx
add esi, dword [esp + 0x70]
adc edi, dword [esp + 0x74]
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x14], edi
mov dword [ebx + 0xc], 0x5dea1c
jmp 0x532cd1
mov edx, dword [esp + 0x100]
mov edx, dword [edx]
mov dword [esp + 0x70], edx
cmp eax, 1
je 0x53a63b
cmp eax, 2
je 0x53a617
lea ebx, [esp + 0x140]
mov dword [esp + 0x98], ebx
mov dword [esp + 8], ebx
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de4e0
lea esi, [esp + 0x150]
mov dword [esp], esi
call fcn.0053b204
mov ebx, dword [esp + 0x78]
cmp byte [ebx], 0x33
je 0x53a5fa
lea ebx, [esp + 0x160]
mov dword [esp], ebx
call fcn.0053b204
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x98]
mov dword [esp], edx
call fcn.00588ba4
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0053b8c8
inc eax
jne 0x53a5d5
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.0053b5bc
mov dword [esp], ebx
call fcn.005226b8
mov ecx, dword [esp + 0x98]
mov dword [esp], ecx
call fcn.005226b8
cmp dword [edi], 1
jg 0x537ba5
jmp 0x53844d
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
call fcn.005881b8
jmp 0x53a5dd
mov eax, dword [esp + 0xfc]
mov edx, dword [eax + 4]
mov eax, dword [eax]
cmp dword [esp + 0x70], 0x3f
jbe 0x53a6dd
test edx, edx
jns 0x53979b
jmp 0x53421d
mov eax, dword [esp + 0xfc]
mov ebx, dword [eax]
cmp edx, 0x1f
jbe 0x53a89b
test ebx, ebx
jns 0x53979b
jmp 0x53421d
lea esi, [esp + 0x160]
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0
call fcn.004de4e0
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0053b8c8
xor ebx, ebx
inc eax
sete bl
mov dword [esp], esi
call fcn.005226b8
jmp 0x537202
mov edx, dword [esp + 0xfc]
mov ecx, dword [edx]
test ecx, ecx
jne 0x5341e9
jmp 0x534081
mov eax, dword [esp + 0x100]
mov ebx, dword [eax]
shr ebx, 0x1f
jmp 0x537202
cmp dword [esp + 0x104], 1
je 0x53a70b
mov dword [esp + 4], 0xffffffff
mov dword [esp], 0x616a00
jmp 0x537219
mov cl, byte [esp + 0x70]
shrd eax, edx, cl
sar edx, cl
test cl, 0x20
je 0x53a6f0
mov eax, edx
sar edx, 0x1f
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004de1a8
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x534260
mov edx, dword [esp + 0x100]
mov edx, dword [edx]
mov dword [esp + 0x70], edx
cmp eax, 1
je 0x53a93b
cmp eax, 3
je 0x53a546
cmp dword [esp + 0x70], 0x3f
ja 0x53a546
mov eax, dword [edi + 0xc]
cmp eax, 0x5dea1c
je 0x53a922
cmp eax, 0x5dea30
je 0x53a90b
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.004de214
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
cmp edx, 0
jle 0x53a8e5
mov dword [esp + 0x98], eax
mov dword [esp + 0xa8], edx
mov ecx, 0x3f
sub ecx, dword [esp + 0x70]
mov ebx, 0xffffffff
mov esi, 0xffffffff
shl ebx, cl
test cl, 0x20
je 0x53a7ac
mov esi, ebx
xor ebx, ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], esi
mov ebx, dword [esp + 0x98]
and ebx, dword [esp + 0x88]
mov esi, dword [esp + 0xa8]
and esi, dword [esp + 0x8c]
or esi, ebx
jne 0x53a546
mov cl, byte [esp + 0x70]
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x536e3c
mov edx, eax
xor eax, eax
jmp 0x536e3c
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x53a82f
mov edi, dword [eax + 4]
test edi, edi
je 0x53a82f
mov dword [esp], ebx
call fcn.004dd020
jmp 0x531ca4
mov eax, dword [edi + 0xc]
test eax, eax
je 0x53a85a
mov eax, dword [eax + 4]
test eax, eax
je 0x53a85a
mov dword [esp], edi
call fcn.004dd020
jmp 0x531c97
mov eax, dword [ebx + 4]
test eax, eax
je 0x53a846
cmp eax, dword [0x5dea6c]
je 0x53a846
mov dword [esp], eax
call fcn.004edc48
mov dword [ebx + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [ebx + 0x10], eax
jmp 0x531cb2
mov eax, dword [edi + 4]
test eax, eax
je 0x53a871
cmp eax, dword [0x5dea6c]
je 0x53a871
mov dword [esp], eax
call fcn.004edc48
mov dword [edi + 8], 0xffffffff
mov eax, dword [0x67b764]
mov dword [edi + 0x10], eax
mov dword [0x67b764], edi
jmp 0x531c97
call fcn.004dcd40
mov ebx, dword [0x67b764]
jmp 0x531cb2
mov eax, dword [0x67b764]
test eax, eax
jne 0x53a8ae
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax], 0
mov dword [eax + 4], 0
mov cl, byte [esp + 0x70]
sar ebx, cl
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], 0x5dea30
mov edx, 1
jmp 0x534260
jl 0x53a8f0
cmp eax, 0
ja 0x53a780
mov ebx, eax
not ebx
mov dword [esp + 0x98], ebx
mov esi, edx
not esi
mov dword [esp + 0xa8], esi
jmp 0x53a78e
mov eax, dword [edi + 0x10]
cdq
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
jmp 0x53a777
mov eax, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
jmp 0x53a777
cmp edx, 0x1f
ja 0x53a72a
mov eax, dword [esp + 0xfc]
mov ebx, dword [eax]
cmp ebx, 0
je 0x53a72a
mov edx, ebx
jg 0x53a95c
not edx
mov ecx, 0x1f
sub ecx, dword [esp + 0x70]
mov eax, 0xffffffff
shl eax, cl
test edx, eax
jne 0x53a72a
mov eax, dword [0x67b764]
test eax, eax
jne 0x53a987
call fcn.004dcd40
mov eax, dword [0x67b764]
mov dword [esp + 0xf0], eax
mov edx, dword [eax + 0x10]
mov dword [0x67b764], edx
mov dword [eax + 4], 0
mov cl, byte [esp + 0x70]
shl ebx, cl
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], 0x5dea30
mov dword [eax], 1
inc dword [esp + 0x78]
jmp 0x5308d0
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x535951
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x537544
call fcn.004dcd40
mov edx, dword [0x67b764]
mov eax, dword [esp + 0xf0]
jmp 0x53766b
mov dword [esp + 4], 1
add eax, edx
mov dword [esp], eax
call fcn.004eaf6c
mov dword [esp + 0xf0], eax
mov edx, dword [eax]
inc edx
jmp 0x5344d0
mov edx, dword [eax + 4]
test edx, edx
je 0x53aa33
cmp edx, dword [0x5dea6c]
je 0x53aa33
mov dword [esp], edx
call fcn.004edc48
mov eax, dword [edi + 4]
mov dword [eax + 8], 0xffffffff
mov edx, dword [0x67b764]
mov dword [eax + 0x10], edx
mov dword [0x67b764], eax
jmp 0x531c18
xor ecx, ecx
jmp 0x53109b
mov ebx, dword [esp + 0x78]
movsx eax, byte [ebx + 6]
jmp 0x534ead
call fcn.004dcd40
mov esi, dword [0x67b764]
jmp 0x532c6a
mov eax, 2
jmp 0x534ead
mov eax, dword [esp + 0x104]
jmp 0x537c61
mov edx, dword [edi + 4]
test edx, edx
jne 0x533ad5
jmp case.0x530557.75
call fcn.004dcd40
mov eax, dword [0x67b764]
jmp 0x533bb9
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 4]
test eax, eax
je 0x53aacc
cmp eax, dword [0x5dea6c]
je 0x53aac1
mov dword [esp], eax
call fcn.004edc48
mov ecx, dword [esp + 0x70]
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x53aae3
mov eax, dword [eax + 4]
test eax, eax
je 0x53aae3
mov dword [esp], ecx
call eax
mov ecx, dword [esp + 0x70]
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0xc], 0x5dea30
inc dword [esp + 0x78]
jmp 0x537fe6
mov dword [esp + 0x104], 5
mov eax, 5
jmp 0x537457