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

Disassembly:
sub esp, 0x88
push ebx
push ebp
mov ebp, dword [0x581f0c]
push esi
mov esi, dword [esp + 0x98]
xor ebx, ebx
cmp esi, ebx
push edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x78], 0xffffffff
mov dword [esp + 0x88], ebx
jne 0x443589
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x88
ret
mov eax, dword [ebp + 0xc]
mov ecx, 0xa
cdq
idiv ecx
test edx, edx
jne 0x4435c2
call fcn.0043f8a0
test eax, eax
je 0x4435c2
mov edx, dword [0x583360]
push str.Stack_overflow
push edx
call fcn.00440fb0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x88
ret
mov edx, dword [ebp + 0xc]
inc edx
mov dword [ebp + 0xc], edx
mov ecx, dword [0x55b9d8]
mov eax, edx
cmp eax, ecx
jle 0x4435ff
dec eax
push str.maximum_recursion_depth_exceeded
mov dword [ebp + 0xc], eax
mov eax, dword [0x583308]
push eax
call fcn.00440fb0
mov ecx, dword [esi + 0xc]
add esp, 8
mov dword [ebp + 8], ecx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x88
ret
mov eax, dword [ebp + 0x14]
mov dword [ebp + 8], esi
cmp eax, ebx
je 0x4436d9
mov ecx, dword [ebp + 0x1c]
cmp ecx, ebx
je 0x443673
mov edi, dword [esi + 0x38]
mov eax, dword [ebp + 0x24]
cmp dword [edi + 0x10], ebx
jne 0x443673
push 0x55ab08
push ebx
push esi
push eax
mov dword [edi + 0x10], 1
mov dword [edi + 0x14], ebx
call ecx
mov ecx, dword [edi + 0x1c]
add esp, 0x10
cmp ecx, ebx
jne 0x443646
cmp dword [edi + 0x18], ebx
jne 0x443646
xor ecx, ecx
jmp 0x44364b
mov ecx, 1
mov edx, dword [edi + 0x10]
mov dword [edi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [edi + 0x10], edx
je 0x443673
mov eax, dword [ebp + 0xc]
pop edi
dec eax
mov dword [ebp + 0xc], eax
mov edx, dword [esi + 0xc]
mov dword [ebp + 8], edx
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x88
ret
mov ecx, dword [ebp + 0x18]
cmp ecx, ebx
je 0x4436d9
mov edi, dword [esi + 0x38]
mov eax, dword [ebp + 0x20]
cmp dword [edi + 0x10], ebx
jne 0x4436d9
push 0x55ab08
push ebx
push esi
push eax
mov dword [edi + 0x10], 1
mov dword [edi + 0x14], ebx
call ecx
mov ecx, dword [edi + 0x1c]
add esp, 0x10
cmp ecx, ebx
jne 0x4436ac
cmp dword [edi + 0x18], ebx
jne 0x4436ac
xor ecx, ecx
jmp 0x4436b1
mov ecx, 1
mov edx, dword [edi + 0x10]
mov dword [edi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [edi + 0x10], edx
je 0x4436d9
mov eax, dword [ebp + 0xc]
pop edi
dec eax
mov dword [ebp + 0xc], eax
mov eax, dword [esi + 0xc]
mov dword [ebp + 8], eax
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x88
ret
mov eax, dword [esi + 0x10]
mov dword [esp + 0x70], eax
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x40], ecx
mov ecx, dword [esi + 0x13c]
mov dword [esp + 0x94], edx
lea edx, [esi + ecx*4 + 0x14c]
mov ecx, dword [eax + 4]
mov dword [esp + 0x4c], edx
mov edx, dword [ecx + 0x50]
lea ecx, [esp + 0x44]
push ecx
push ebx
push eax
call dword [edx]
mov edx, dword [esi + 0x3c]
mov eax, dword [esp + 0x50]
add esp, 0xc
mov dword [esp + 0x28], ebx
lea ecx, [edx + eax + 1]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x34], ecx
mov ecx, dword [esi + 0x24]
mov dword [esp + 0x10], ecx
mov dword [esi + 0x24], ebx
mov dword [esp + 0x14], 0x55ab08
xor ebp, ebp
jmp 0x44374b
add esp, 4
mov ecx, dword [esp + 0x10]
mov edx, dword [0x55b9e0]
dec edx
mov dword [0x55b9e0], edx
jns 0x44380a
mov eax, dword [esp + 0x34]
cmp byte [eax], 0x7a
je 0x44380a
mov ecx, dword [0x55b9dc]
mov eax, dword [esp + 0x38]
mov dword [0x55b9e0], ecx
xor edi, edi
mov ecx, dword [eax + 0x44]
inc ecx
mov dword [eax + 0x44], ecx
mov eax, dword [0x5811b0]
cmp eax, edi
je 0x443806
cmp dword [0x5811b8], edi
jne 0x4437f8
mov dword [0x5811b0], edi
mov eax, dword [0x5811a8]
mov ecx, dword [0x5811ac]
mov esi, 1
cmp eax, ecx
mov dword [0x5811b8], esi
je 0x4437f2
mov ecx, dword [eax*8 + 0x5810a8]
mov edx, dword [eax*8 + 0x5810ac]
inc eax
and eax, 0x8000001f
jns 0x4437d0
dec eax
or eax, 0xffffffe0
inc eax
push edx
mov dword [0x5811a8], eax
call ecx
add esp, 4
test eax, eax
jl 0x4438f8
mov eax, dword [0x5811a8]
mov ecx, dword [0x5811ac]
cmp eax, ecx
jne 0x4437b5
mov dword [0x5811b8], edi
cmp dword [0x5811b0], edi
je 0x443806
mov dword [0x55b9e0], edi
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x38]
sub edi, ebx
mov dword [edx + 0x3c], edi
mov dword [esp + 0x30], edi
mov esi, dword [eax + 0x1c]
test esi, esi
je 0x4439c2
mov esi, dword [eax + 0x10]
test esi, esi
jne 0x4439c2
mov dword [edx + 0x24], ecx
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x88]
cmp edi, eax
mov dword [esp + 0x1c], 0
jl 0x44386a
cmp edi, dword [esp + 0x78]
jl 0x44398a
mov edx, dword [esp + 0x9c]
mov esi, dword [edx + 0x10]
mov edi, dword [esi + 0x3c]
mov eax, dword [edi + 8]
add edi, 0x14
cdq
sub eax, edx
xor edx, edx
mov ebx, eax
mov eax, dword [esi + 0x38]
sar ebx, 1
test ebx, ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x24], eax
jle 0x4438cc
mov esi, dword [esp + 0x30]
xor eax, eax
mov al, byte [edi]
add eax, edx
cmp eax, esi
jg 0x4438c8
inc edi
mov edx, eax
mov al, byte [edi]
test al, al
je 0x4438b3
mov dword [esp + 0x88], edx
mov esi, dword [esp + 0x24]
and eax, 0xff
add esi, eax
inc edi
dec ebx
mov dword [esp + 0x24], esi
test ebx, ebx
jg 0x443895
mov dword [esp + 0x2c], edx
cmp edx, dword [esp + 0x30]
jne 0x44395f
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x24]
mov esi, dword [eax + 0x38]
mov dword [eax + 0x40], edx
mov eax, dword [esi + 0x10]
test eax, eax
je 0x44390d
mov dword [esp + 0x1c], 0
jmp 0x44395f
mov dword [0x5811b8], edi
mov dword [0x5811b0], esi
mov dword [esp + 0x28], esi
jmp 0x446c39
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x34]
push 0x55ab08
push 2
push eax
push ecx
mov dword [esi + 0x10], 1
mov dword [esi + 0x14], 0
call dword [esp + 0x30]
mov ecx, dword [esi + 0x1c]
add esp, 0x10
test ecx, ecx
jne 0x443948
mov ecx, dword [esi + 0x18]
test ecx, ecx
jne 0x443948
xor ecx, ecx
jmp 0x44394d
mov ecx, 1
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0x10]
dec ecx
mov dword [esp + 0x1c], eax
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
test ebx, ebx
jle 0x443982
mov esi, dword [esp + 0x2c]
dec ebx
js 0x44397c
xor edx, edx
mov al, byte [edi + 1]
mov dl, byte [edi]
add esi, edx
inc edi
inc edi
test al, al
jne 0x44397c
dec ebx
jns 0x44396a
mov dword [esp + 0x78], esi
jmp 0x44398a
mov dword [esp + 0x78], DirectSoundCreate
mov edx, dword [esp + 0x9c]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x1c]
mov eax, dword [edx + 0x3c]
mov dword [esp + 0x20], esi
add eax, ebx
mov dword [esp + 0x34], eax
mov eax, dword [edx + 0x24]
test eax, eax
je 0x4439ba
mov ecx, eax
mov dword [edx + 0x24], 0
mov dword [esp + 0x10], ecx
test esi, esi
jne 0x443ee5
mov edi, dword [esp + 0x34]
xor eax, eax
mov al, byte [edi]
inc edi
cmp eax, 0x5a
mov dword [esp + 0x34], edi
jl 0x4439f0
add edi, 2
xor edx, edx
mov dl, byte [edi - 1]
mov esi, edx
xor edx, edx
mov dl, byte [edi - 2]
shl esi, 8
add esi, edx
mov dword [esp + 0x18], esi
mov dword [esp + 0x34], edi
lea esi, [eax - 1]
cmp esi, 0x8e
ja case.0x443a07.96
xor edx, edx
mov dl, byte [esi + 0x4475b4]
jmp dword [edx*4 + 0x447434]
xor eax, eax
mov esi, dword [esp + 0x18]
mov al, byte [edi]
add edi, 3
xor edx, edx
xor ebx, ebx
mov dl, byte [edi - 1]
mov bl, byte [edi - 2]
shl edx, 8
add edx, ebx
shl esi, 0x10
or edx, esi
mov dword [esp + 0x18], edx
jmp 0x4439ec
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + ecx*4 + 0x14c]
test eax, eax
mov dword [esp + 0x14], eax
je 0x445845
jmp 0x443a66
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x18]
mov eax, dword [edx + eax*4 + 0xc]
mov dword [esp + 0x14], eax
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x44380e
mov ebp, dword [ecx - 8]
mov eax, dword [ecx - 4]
mov dword [ecx - 4], ebp
mov edx, dword [esp + 0x10]
mov dword [edx - 8], eax
mov ecx, dword [esp + 0x10]
jmp 0x44380e
mov ebp, dword [ecx - 8]
mov edx, dword [ecx - 4]
mov eax, dword [ecx - 0xc]
mov dword [ecx - 4], ebp
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], eax
mov dword [ecx - 8], eax
mov eax, dword [esp + 0x10]
mov dword [eax - 0xc], edx
mov ecx, dword [esp + 0x10]
jmp 0x44380e
mov esi, dword [ecx - 8]
mov edx, dword [ecx - 4]
mov ebp, dword [ecx - 0xc]
mov eax, dword [ecx - 0x10]
mov dword [ecx - 4], esi
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], eax
mov dword [ecx - 8], ebp
mov ecx, dword [esp + 0x10]
mov dword [ecx - 0xc], eax
mov eax, dword [esp + 0x10]
mov dword [eax - 0x10], edx
mov ecx, dword [esp + 0x10]
jmp 0x44380e
mov ecx, dword [ecx - 4]
mov edx, dword [ecx]
inc edx
mov dword [ecx], edx
mov edx, dword [esp + 0x10]
mov dword [edx], ecx
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x44380e
mov eax, dword [esp + 0x18]
cmp eax, 2
jne 0x443b51
mov ecx, dword [ecx - 4]
mov dword [esp + 0x14], ecx
mov ebx, dword [ecx]
inc ebx
mov dword [ecx], ebx
mov eax, dword [esp + 0x10]
mov ebp, dword [eax - 8]
mov esi, dword [ebp]
inc esi
mov dword [ebp], esi
mov eax, dword [esp + 0x10]
add eax, 8
mov dword [esp + 0x10], eax
mov dword [eax - 4], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx - 8], ebp
mov ecx, dword [esp + 0x10]
jmp 0x44380e
cmp eax, 3
jne 0x443ea0
mov ecx, dword [ecx - 4]
mov dword [esp + 0x14], ecx
mov edx, dword [ecx]
inc edx
mov dword [ecx], edx
mov edx, dword [esp + 0x10]
mov ebp, dword [edx - 8]
mov eax, dword [ebp]
inc eax
mov dword [ebp], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax - 0xc]
mov ebx, dword [eax]
inc ebx
mov dword [eax], ebx
mov edx, dword [esp + 0x10]
add edx, 0xc
mov dword [esp + 0x10], edx
mov dword [edx - 4], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx - 8], ebp
mov edx, dword [esp + 0x10]
mov dword [edx - 0xc], eax
mov ecx, dword [esp + 0x10]
jmp 0x44380e
sub ecx, 4
mov eax, 0x55aca8
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov ebx, dword [ecx - 4]
cmp dword [ebp + 4], eax
jne case.0x443bcf.6
cmp dword [ebx + 4], eax
jne case.0x443bcf.6
mov edx, dword [esp + 0x18]
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 8]
cmp edx, 9
ja case.0x443bcf.6
jmp dword [edx*4 + 0x447644]
xor edx, edx
cmp eax, ecx
setl dl
mov eax, edx
jmp 0x443c28
xor edx, edx
cmp eax, ecx
setle dl
mov eax, edx
jmp 0x443c28
xor edx, edx
cmp eax, ecx
sete dl
mov eax, edx
jmp 0x443c28
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
jmp 0x443c28
xor edx, edx
cmp eax, ecx
setg dl
mov eax, edx
jmp 0x443c28
xor edx, edx
cmp eax, ecx
setge dl
mov eax, edx
jmp 0x443c28
xor eax, eax
cmp ebx, ebp
sete al
jmp 0x443c28
xor eax, eax
cmp ebx, ebp
setne al
test eax, eax
mov esi, 0x55b384
jne 0x443ca6
mov esi, 0x55b378
inc dword [esi]
jmp 0x443cb7
mov eax, dword [esp + 0x18]
lea ecx, [eax - 6]
cmp ecx, 4
ja case.default.0x443c46
jmp dword [ecx*4 + 0x44766c]
xor eax, eax
cmp ebx, ebp
sete al
jmp 0x443c98
xor eax, eax
cmp ebx, ebp
setne al
jmp 0x443c98
push ebx
push ebp
call fcn.0044f7b0
add esp, 8
test eax, eax
jge 0x443c9a
xor esi, esi
jmp 0x443cb7
push ebx
push ebp
call fcn.0044f7b0
add esp, 8
test eax, eax
jge 0x443c83
xor esi, esi
jmp 0x443cb7
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
jmp 0x443c98
push ebp
push ebx
call fcn.00441010
add esp, 8
test eax, eax
mov esi, 0x55b384
jne 0x443ca6
mov esi, 0x55b378
inc dword [esi]
jmp 0x443cb7
push eax
push ebp
push ebx
call fcn.004314e0
add esp, 0xc
mov esi, eax
mov eax, dword [ebx]
mov dword [esp + 0x14], esi
dec eax
mov dword [ebx], eax
jne 0x443ccc
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x443cdf
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
test esi, esi
mov dword [ecx - 4], esi
je 0x443ee1
mov al, byte [edi]
cmp al, 0x6f
jne 0x443d36
xor eax, eax
mov ecx, dword [esp + 0x10]
mov al, byte [edi + 2]
xor edx, edx
mov dl, byte [edi + 1]
shl eax, 8
add eax, edx
add edi, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edi
mov ebp, dword [ecx - 4]
cmp ebp, 0x55b384
je 0x443d67
cmp ebp, 0x55b378
jne 0x445e59
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x44380e
cmp al, 0x70
jne 0x443747
xor eax, eax
xor ecx, ecx
mov al, byte [edi + 2]
mov cl, byte [edi + 1]
shl eax, 8
add eax, ecx
mov ecx, dword [esp + 0x10]
add edi, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edi
mov ebp, dword [ecx - 4]
cmp ebp, 0x55b378
jne 0x443d9c
cmp byte [edi], 1
jne 0x44380e
inc edi
mov dword [esp + 0x34], edi
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx]
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x443806
mov edx, dword [ecx + 4]
push ecx
call dword [edx + 0x18]
mov ecx, dword [esp + 0x14]
add esp, 4
jmp 0x44380e
cmp ebp, 0x55b384
jne 0x445e8a
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x44380e
mov esi, dword [ecx - 4]
push esi
call fcn.004502c0
mov ebx, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x443dd8
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
test ebx, ebx
je 0x443f9e
mov dword [ecx - 4], ebx
mov al, byte [edi]
cmp al, 0x5d
jne 0x443747
xor eax, eax
mov ecx, dword [esp + 0x10]
mov al, byte [edi + 2]
xor edx, edx
mov dl, byte [edi + 1]
shl eax, 8
add eax, edx
add edi, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edi
mov ecx, dword [ecx - 4]
push ecx
call fcn.00450350
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x44613e
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
mov al, byte [edi]
cmp al, 0x7d
jne 0x445ed0
xor eax, eax
xor edx, edx
mov al, byte [edi + 2]
mov dl, byte [edi + 1]
shl eax, 8
add eax, edx
add edi, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edi
mov esi, dword [esp + 0x9c]
mov edx, dword [esp + 0x18]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [esi + edx*4 + 0x14c]
mov ecx, dword [ecx]
test eax, eax
mov dword [esi + edx*4 + 0x14c], ecx
je 0x443806
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x443806
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x443806
push str.invalid_argument_to_DUP_TOPX__bytecode_corruption__
call fcn.0043f860
add esp, 4
jmp 0x443ee1
mov esi, dword [ecx - 4]
push esi
call fcn.0044e690
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x443ed2
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
mov dword [eax - 4], edi
test edi, edi
jne 0x443747
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x446c2f
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x443f05
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x44374b
mov dword [esp + 0x28], 1
mov dword [esp + 0x14], 0x55ab08
mov dword [esp + 0x20], 0
jmp 0x446c39
mov esi, dword [ecx - 4]
push esi
call fcn.0044e630
add esp, 4
jmp 0x445abf
mov esi, dword [ecx - 4]
push esi
call fcn.00432440
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x20], edi
mov dword [esi], eax
jne 0x443f56
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test edi, edi
jne 0x443f75
mov eax, dword [0x55b384]
mov ecx, dword [esp + 0x10]
inc eax
mov dword [0x55b384], eax
mov dword [ecx - 4], 0x55b384
jmp 0x443747
jle 0x443f9a
mov eax, dword [0x55b378]
mov edx, dword [esp + 0x10]
inc eax
mov dword [esp + 0x20], 0
mov dword [0x55b378], eax
mov dword [edx - 4], 0x55b378
jmp 0x443747
mov ecx, dword [esp + 0x10]
sub ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
mov esi, dword [ecx - 4]
push esi
call fcn.00430950
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x443fcd
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
mov dword [ecx - 4], edi
jmp 0x443ed9
mov esi, dword [ecx - 4]
push esi
call fcn.0044e6f0
jmp 0x443eb8
sub ecx, 4
push 0x55ab08
mov dword [esp + 0x14], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d960
add esp, 0xc
jmp 0x4443c1
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d690
jmp 0x4443be
mov eax, dword [0x581054]
test eax, eax
jne case.0x443a07.19
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d540
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d8a0
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d840
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d900
jmp 0x4443be
sub ecx, 4
mov eax, 0x55aca8
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x4440c6
cmp dword [ebp + 4], eax
jne 0x4440c6
mov eax, dword [esi + 8]
mov edx, dword [ebp + 8]
lea ecx, [edx + eax]
mov edi, ecx
xor edi, eax
jge 0x4440b8
mov eax, ecx
xor eax, edx
jl 0x4440c6
push ecx
call fcn.00435c70
add esp, 4
jmp 0x4443c1
push ebp
push esi
call fcn.0044d600
jmp 0x4443be
sub ecx, 4
mov eax, 0x55aca8
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x444111
cmp dword [ebp + 4], eax
jne 0x444111
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 8]
mov eax, edx
sub eax, ecx
mov edi, eax
xor edi, edx
jge 0x444103
not ecx
xor ecx, eax
jl 0x444111
push eax
call fcn.00435c70
add esp, 4
jmp 0x4443c1
push ebp
push esi
call fcn.0044d4e0
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], 0x55bca8
jne 0x444174
cmp dword [ebp + 4], 0x55aca8
jne 0x444174
push ebp
call fcn.00435d60
add esp, 4
test eax, eax
jge 0x44414d
add eax, dword [esi + 8]
js 0x44415c
cmp eax, dword [esi + 8]
jge 0x44415c
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + eax*4]
inc dword [edi]
jmp 0x444180
mov edx, dword [0x58335c]
push str.list_index_out_of_range
push edx
call fcn.00440fb0
add esp, 8
xor edi, edi
jmp 0x444180
push ebp
push esi
call fcn.0044c9e0
add esp, 8
mov edi, eax
mov eax, dword [esi]
mov dword [esp + 0x14], edi
dec eax
mov dword [esi], eax
jne 0x444195
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x445ad6
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
mov edx, dword [esp + 0x14]
add esp, 4
mov dword [edx - 4], edi
jmp 0x443ed9
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d420
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d480
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d3c0
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d360
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044d130
jmp 0x44417b
sub ecx, 4
push 0x55ab08
mov dword [esp + 0x14], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044e5d0
add esp, 0xc
jmp 0x44417e
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044e340
jmp 0x44417b
mov eax, dword [0x581054]
test eax, eax
jne case.0x443a07.21
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044e0a0
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044e1d0
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044e130
jmp 0x44417b
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call 0x44e540
jmp 0x44417b
sub ecx, 4
mov eax, 0x55aca8
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x444306
cmp dword [ebp + 4], eax
jne 0x444306
mov eax, dword [esi + 8]
mov edx, dword [ebp + 8]
lea ecx, [edx + eax]
mov edi, ecx
xor edi, eax
jge 0x4442f8
mov eax, ecx
xor eax, edx
jl 0x444306
push ecx
call fcn.00435c70
add esp, 4
jmp 0x4443c1
push ebp
push esi
call fcn.0044e270
jmp 0x4443be
sub ecx, 4
mov eax, 0x55aca8
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x44434e
cmp dword [ebp + 4], eax
jne 0x44434e
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 8]
mov eax, edx
sub eax, ecx
mov edi, eax
xor edi, edx
jge 0x444343
not ecx
xor ecx, eax
jl 0x44434e
push eax
call fcn.00435c70
add esp, 4
jmp 0x4443c1
push ebp
push esi
call fcn.0044e010
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044def0
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044df80
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044de60
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044ddc0
jmp 0x4443be
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.0044dd20
add esp, 8
mov edi, eax
mov eax, dword [esi]
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x4443d8
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x443ed2
mov edx, dword [ebp + 4]
push ebp
jmp 0x443ecc
lea edx, [eax - 2]
test dl, 2
je 0x444401
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x444403
xor ebp, ebp
test al, 1
je 0x444412
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edi, dword [ecx]
jmp 0x444414
xor edi, edi
mov ebx, dword [ecx - 4]
xor esi, esi
mov dword [esp + 0x2c], ebx
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x34]
cmp eax, esi
je 0x444509
cmp dword [eax + 0x10], esi
je 0x444509
cmp edi, esi
je 0x444474
mov eax, dword [edi + 4]
cmp eax, 0x55aca8
je 0x444474
push 0x55aca8
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x444474
mov eax, dword [edi + 4]
cmp eax, 0x55cff8
je 0x444474
push 0x55cff8
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x444509
cmp ebp, esi
je 0x4444b0
mov eax, dword [ebp + 4]
cmp eax, 0x55aca8
je 0x4444b0
push 0x55aca8
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x4444b0
mov eax, dword [ebp + 4]
cmp eax, 0x55cff8
je 0x4444b0
push 0x55cff8
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x444509
lea ecx, [esp + 0x80]
mov dword [esp + 0x80], esi
push ecx
push edi
mov dword [esp + 0x94], DirectSoundCreate
call fcn.00448430
add esp, 8
test eax, eax
je 0x444541
lea edx, [esp + 0x8c]
push edx
push ebp
call fcn.00448430
add esp, 8
test eax, eax
je 0x444541
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x80]
push eax
push ecx
push ebx
call fcn.0044edf0
add esp, 0xc
mov esi, eax
jmp 0x444541
push esi
push ebp
push edi
call fcn.0048bf90
mov esi, eax
add esp, 0xc
test esi, esi
je 0x44453f
push esi
push ebx
call fcn.0044c9e0
mov ebx, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x444537
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov esi, ebx
mov ebx, dword [esp + 0x2c]
jmp 0x444541
xor esi, esi
mov eax, dword [ebx]
mov dword [esp + 0x14], esi
dec eax
mov dword [ebx], eax
jne 0x444556
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x44456b
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x44456b
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebp, ebp
je 0x444582
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x444582
mov edx, dword [ebp + 4]
push ebp
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
test esi, esi
mov dword [eax - 4], esi
jmp 0x443edb
test al, 2
je 0x44459f
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x4445a1
xor ebp, ebp
test al, 1
je 0x4445b0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebx, dword [ecx]
jmp 0x4445b2
xor ebx, ebx
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edi, dword [ecx]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
push esi
push ebp
push ebx
push edi
call fcn.00448570
mov dword [esp + 0x30], eax
mov eax, dword [esi]
add esp, 0x10
dec eax
mov dword [esi], eax
jne 0x4445e5
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x4445f6
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x44460b
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x44460b
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x444622
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x444622
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x20]
test eax, eax
jmp 0x4446f3
lea edx, [eax - 2]
test dl, 2
je 0x444640
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x444642
xor ebp, ebp
test al, 1
je 0x444651
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edi, dword [ecx]
jmp 0x444653
xor edi, edi
sub ecx, 4
push 0
mov dword [esp + 0x14], ecx
push ebp
mov esi, dword [ecx]
push edi
push esi
call fcn.00448570
mov ebx, eax
mov eax, dword [esi]
add esp, 0x10
dec eax
mov dword [esp + 0x20], ebx
mov dword [esi], eax
jne 0x444680
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x444695
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x444695
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebp, ebp
je 0x4446f1
jmp 0x4446de
mov ebp, dword [ecx - 4]
mov edi, dword [ecx - 8]
mov esi, dword [ecx - 0xc]
add ecx, 0xfffffff4
push esi
push ebp
push edi
mov dword [esp + 0x1c], ecx
call fcn.0044cba0
mov ebx, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x20], ebx
mov dword [esi], eax
jne 0x4446cd
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x4446de
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x4446f1
mov edx, dword [ebp + 4]
push ebp
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x443747
jmp 0x443ee1
mov ebp, dword [ecx - 4]
mov esi, dword [ecx - 8]
add ecx, 0xfffffff8
push ebp
push esi
mov dword [esp + 0x18], ecx
call fcn.0044cd70
mov edi, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esp + 0x20], edi
mov dword [esi], eax
jne 0x44472c
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x44473f
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
test edi, edi
je 0x443747
jmp 0x443ee1
sub ecx, 4
push str.displayhook
mov dword [esp + 0x14], ecx
mov edi, dword [ecx]
call fcn.0048c470
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x44478c
mov edx, dword [0x583308]
push str.lost_sys.displayhook
push edx
call fcn.00440fb0
add esp, 8
les ecx, [eax]
xor esi, esi
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x14], esi
jmp 0x4447e1
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x4447dd
push edi
push 0x537abc
call fcn.0043fb90
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x14], esi
jne 0x4447b6
mov dword [esp + 0x20], 0xffffffff
jmp 0x4447e1
push 0
push esi
push ebp
call fcn.00448090
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x4447ac
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x4447e1
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
jmp 0x4447e1
mov esi, dword [esp + 0x14]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x4447f2
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test esi, esi
je 0x443ee1
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x443ee1
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
jmp 0x443ee1
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov dword [esp + 0x48], ebp
mov eax, dword [esp + 0x48]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
test eax, eax
je 0x444839
cmp eax, 0x55ab08
jne 0x444868
push str.stdout
call fcn.0048c470
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x444872
mov eax, dword [0x583308]
push str.lost_sys.stdout
push eax
call fcn.00440fb0
add esp, 8
or ebx, 0xffffffff
mov dword [esp + 0x20], ebx
jmp 0x44486c
mov ebx, dword [esp + 0x20]
test ebp, ebp
je 0x4448a0
jmp 0x444876
mov ebx, dword [esp + 0x20]
mov ecx, dword [ebp]
push 0
inc ecx
push ebp
mov dword [ebp], ecx
call fcn.0048f810
add esp, 8
test eax, eax
je 0x4448a0
push ebp
push 0x537d34
call fcn.0048fab0
mov ebx, eax
add esp, 8
mov dword [esp + 0x20], ebx
test ebx, ebx
jne 0x444920
push 1
push ebp
push esi
call fcn.0048f900
mov ebx, eax
add esp, 0xc
test ebx, ebx
mov dword [esp + 0x20], ebx
jne 0x444920
mov eax, dword [esi + 4]
cmp eax, 0x55b158
je 0x4448d6
push 0x55b158
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x444915
mov edi, dword [esi + 8]
test edi, edi
je 0x444915
cmp dword [0x5686b8], 1
jle 0x4448f9
xor ecx, ecx
push 8
mov cl, byte [edi + esi + 0x13]
push ecx
call fcn.004e98fe
add esp, 8
jmp 0x44490a
mov eax, dword [str.________________________________H]
xor edx, edx
mov dl, byte [edi + esi + 0x13]
mov al, byte [eax + edx*2]
and eax, 8
test eax, eax
je 0x444915
cmp byte [edi + esi + 0x13], 0x20
jne 0x444920
push 1
push ebp
call fcn.0048f810
add esp, 8
test ebp, ebp
je 0x444937
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x444937
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x444948
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x444961
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x444961
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
mov dword [esp + 0x48], 0
je 0x443747
jmp 0x443ee1
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
test esi, esi
mov ebp, esi
je 0x444993
cmp esi, 0x55ab08
jne 0x4449be
jmp 0x444993
mov esi, dword [esp + 0x48]
push str.stdout
call fcn.0048c470
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x4449c2
mov edx, dword [0x583308]
push str.lost_sys.stdout
push edx
call fcn.00440fb0
mov ecx, dword [esp + 0x18]
add esp, 8
test ebp, ebp
je 0x4449e6
push ebp
push 0x53c5b8
call fcn.0048fab0
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4449e2
push eax
push ebp
call fcn.0048f810
add esp, 8
mov ecx, dword [esp + 0x10]
test esi, esi
je 0x4449ff
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x4449fb
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], 0
jmp 0x443ee5
mov dword [esp + 0x28], 4
jmp 0x444a33
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00435c70
add esp, 4
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], 5
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x28]
cmp edi, 6
je 0x447107
mov eax, dword [ebx + 0x48]
test eax, eax
jle 0x4470c3
push ebx
call fcn.004917d0
mov edi, eax
add esp, 4
mov dword [esp + 0x7c], edi
cmp dword [edi], 0x78
jne 0x444a75
cmp dword [esp + 0x28], 5
je 0x446e22
mov ecx, dword [esp + 0x10]
mov edx, dword [ebx + 0x20]
mov eax, ecx
sub eax, edx
mov edx, dword [edi + 8]
sar eax, 2
cmp eax, edx
jle 0x444abd
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [ecx]
test eax, eax
je 0x444aac
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x444aa8
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
mov edx, ecx
sub edx, eax
mov eax, dword [edi + 8]
sar edx, 2
cmp edx, eax
jg 0x444a8a
mov eax, dword [edi]
mov edx, dword [esp + 0x28]
cmp eax, 0x78
jne 0x444ad1
cmp edx, 4
je 0x4470a9
cmp eax, 0x7a
je 0x446e66
cmp eax, 0x79
jne 0x444a3e
cmp dword [esp + 0x28], 1
jne 0x444a3e
jmp 0x446e6f
mov eax, dword [esp + 0x18]
xor ebp, ebp
xor edx, edx
xor esi, esi
cmp eax, 3
ja case.default.0x444b06
jmp dword [eax*4 + 0x447680]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edx, dword [ecx]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov eax, esi
mov dword [esp + 0x28], edx
test ebp, ebp
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], ebp
jne 0x444b88
call fcn.00488ef0
mov ecx, dword [eax + 0x34]
test ecx, ecx
jne 0x444b4b
mov ecx, 0x55ab08
mov dword [esp + 0x1c], ecx
mov edx, dword [eax + 0x38]
mov dword [esp + 0x28], edx
mov eax, dword [eax + 0x3c]
test ecx, ecx
mov dword [esp + 0x24], eax
je 0x444b6a
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x444b7b
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x444b88
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x24]
cmp eax, 0x55ab08
jne 0x444c22
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jne 0x444bab
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x444bce
mov eax, dword [0x55ab08]
mov dword [esp + 0x28], 0x55ab08
inc eax
mov dword [0x55ab08], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
cmp eax, 0x55ba48
je 0x444bee
push 0x55ba48
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x444c48
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00448800
add esp, 4
test eax, eax
jle 0x444c48
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x1c], ecx
mov edx, dword [ecx]
inc edx
mov dword [ecx], edx
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x444bce
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x444bce
test eax, eax
je 0x444bb3
cmp dword [eax + 4], 0x561e98
je 0x444bb3
mov edx, dword [0x58334c]
push str.raise:_arg_3_must_be_a_traceback_or_None
push edx
call fcn.00440fb0
add esp, 8
jmp 0x444d21
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
cmp eax, 0x55b158
jne 0x444c6c
mov ecx, dword [0x583378]
push str.raising_a_string_exception_is_deprecated
push ecx
call fcn.00441a90
add esp, 8
jmp 0x444cdd
cmp eax, 0x55d910
jne 0x444c8c
lea edx, [esp + 0x24]
lea eax, [esp + 0x28]
push edx
lea ecx, [esp + 0x20]
push eax
push ecx
call fcn.00441180
add esp, 0xc
jmp 0x444cdd
cmp eax, 0x55dab8
jne 0x444d09
mov eax, dword [esp + 0x28]
cmp eax, 0x55ab08
je 0x444cb4
mov edx, dword [0x58334c]
push str.instance_exception_may_not_have_a_separate_value
push edx
call fcn.00440fb0
add esp, 8
jmp 0x444d21
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jne 0x444ccc
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [eax + 8]
mov dword [esp + 0x1c], eax
inc dword [eax]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
push edx
push eax
push ecx
call fcn.00440ed0
mov ecx, dword [esp + 0x30]
add esp, 0xc
xor edx, edx
test ecx, ecx
setne dl
inc edx
mov dword [esp + 0x28], edx
jmp 0x446c39
mov eax, dword [eax + 0xc]
mov ecx, dword [0x58334c]
push eax
push str.exceptions_must_be_classes__instances__or_strings__deprecated___not__s
push ecx
call fcn.004417a0
add esp, 0xc
mov eax, dword [esp + 0x28]
test eax, eax
je 0x444d41
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jne 0x444d41
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x444d61
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x1c]
cmp dword [eax], 0
jne 0x444d61
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x444d81
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jne 0x444d81
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x28], 1
jmp 0x446c39
mov eax, dword [0x58330c]
push str.bad_RAISE_VARARGS_oparg
push eax
call fcn.00440fb0
add esp, 8
mov dword [esp + 0x28], 1
jmp 0x446c39
mov ecx, dword [esp + 0x9c]
mov eax, dword [ecx + 0x1c]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x444dd9
mov edx, dword [0x58330c]
push str.no_locals
push edx
call fcn.00440fb0
add esp, 8
jmp 0x443ee1
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
sub ecx, 4
mov dword [esp + 0x28], 3
mov dword [esp + 0x10], ecx
mov edx, dword [ecx]
mov dword [esp + 0x3c], edx
jmp 0x444a33
mov edx, dword [esp + 0x9c]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x28], 6
mov eax, dword [ecx]
mov dword [edx + 0x24], ecx
mov dword [esp + 0x3c], eax
jmp 0x444a33
mov ebp, dword [ecx - 4]
mov ebx, dword [ecx - 8]
mov esi, dword [ecx - 0xc]
add ecx, 0xfffffff4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], ebx
mov eax, dword [esi + 4]
mov dword [esp + 0x2c], esi
cmp eax, 0x55ba48
mov dword [esp + 0x24], ebp
mov dword [esp + 0x30], 0
je 0x444e72
push 0x55ba48
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x444ed5
cmp ebx, 0x55ab08
jne 0x444f3e
cmp ebp, 0x55ab08
jne 0x444ed5
mov eax, dword [esp + 0x2c]
push eax
call fcn.00448800
mov edi, eax
add esp, 4
cmp edi, 2
je 0x444e9f
cmp edi, 3
jne 0x444ed5
mov esi, dword [esp + 0x2c]
push 1
push esi
call fcn.00448840
add esp, 8
cmp edi, 3
mov ebx, eax
jne 0x444ec4
push 2
push esi
call fcn.00448840
add esp, 8
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x2c]
push 0
push ecx
call fcn.00448840
add esp, 8
mov esi, eax
cmp ebx, 0x55ab08
jne 0x444f3e
call fcn.00488ef0
push eax
call dword [0x581f10]
add esp, 4
test eax, eax
jne 0x444ef4
xor ebx, ebx
jmp 0x444ef7
mov ebx, dword [eax + 0x18]
cmp dword [esp + 0x24], 0x55ab08
jne 0x444f4c
call fcn.00488ef0
push eax
call dword [0x581f10]
mov edi, eax
add esp, 4
test edi, edi
jne 0x444f24
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], 1
jmp 0x444f4c
push edi
call fcn.00491800
mov edx, dword [edi + 0x1c]
add esp, 4
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], 1
jmp 0x444f4c
cmp dword [esp + 0x24], 0x55ab08
jne 0x444f4c
mov dword [esp + 0x24], ebx
mov eax, dword [esi + 4]
cmp eax, 0x55b158
je 0x444f95
push 0x55b158
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x444f95
mov eax, dword [esi + 4]
cmp eax, 0x55e258
je 0x444f95
cmp eax, 0x55ec20
je 0x444f95
push 0x55ec20
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x444f95
push str.exec:_arg_1_must_be_a_string__file__or_code_object
jmp 0x445031
mov eax, dword [ebx + 4]
cmp eax, 0x55d780
je 0x444fbf
push 0x55d780
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x444fbf
mov ecx, dword [0x58334c]
push str.exec:_arg_2_must_be_a_dictionary_or_None
push ecx
jmp 0x445037
mov edi, dword [esp + 0x24]
mov eax, dword [edi + 4]
cmp eax, 0x55d780
je 0x444fed
push 0x55d780
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x444fed
mov edx, dword [0x58334c]
push str.exec:_arg_3_must_be_a_dictionary_or_None
push edx
jmp 0x445037
push str.__builtins__
push ebx
call fcn.00467ed0
add esp, 8
test eax, eax
jne 0x445018
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x14]
push ecx
push str.__builtins__
push ebx
call fcn.00467f60
add esp, 0xc
mov eax, dword [esi + 4]
cmp eax, 0x55e258
jne 0x44506a
mov edx, dword [esi + 0x28]
mov eax, dword [edx + 8]
test eax, eax
jle 0x44504c
push str.code_object_passed_to_exec_may_not_contain_free_variables
mov eax, dword [0x58334c]
push eax
call fcn.00440fb0
add esp, 8
mov dword [esp + 0x20], 0xffffffff
jmp 0x4451f3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push edi
push ebx
push esi
call fcn.00447690
add esp, 0x28
jmp 0x4451b0
cmp eax, 0x55ec20
je 0x445128
push 0x55ec20
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x445128
lea ecx, [esp + 0x84]
push eax
push ecx
push esi
mov dword [esp + 0x80], eax
call fcn.00438fd0
add esp, 0xc
test eax, eax
je 0x4450b5
mov dword [esp + 0x20], 0xffffffff
jmp 0x4451f3
call fcn.00488ef0
push eax
call dword [0x581f10]
mov esi, dword [esp + 0x78]
add esp, 4
xor ecx, ecx
test esi, esi
setne cl
test eax, eax
je 0x4450ea
mov edx, dword [eax + 0x10]
mov eax, dword [edx + 0x14]
and eax, 0x2000
je 0x4450ea
mov ecx, esi
or ecx, eax
mov dword [esp + 0x74], ecx
jmp 0x4450ee
test ecx, ecx
je 0x44510c
mov ecx, dword [esp + 0x84]
lea eax, [esp + 0x74]
push eax
push edi
push ebx
push 0x101
push ecx
call fcn.0043f330
jmp 0x4451ad
mov edx, dword [esp + 0x84]
push edi
push ebx
push 0x101
push edx
call fcn.0043f150
add esp, 0x10
jmp 0x4451b0
push esi
call fcn.0048d570
push esi
mov edi, eax
call fcn.0048d5a0
push eax
call fcn.00438f60
mov esi, eax
mov dword [esp + 0x78], 0
call fcn.00488ef0
push eax
call dword [0x581f10]
mov edx, dword [esp + 0x7c]
add esp, 0x10
xor ecx, ecx
test edx, edx
setne cl
test eax, eax
je 0x44517b
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
and eax, 0x2000
je 0x44517b
mov ecx, edx
or ecx, eax
mov dword [esp + 0x6c], ecx
jmp 0x44517f
test ecx, ecx
je 0x44519b
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x6c]
push ecx
push edx
push ebx
push 0x101
push esi
push edi
call fcn.0043f3e0
add esp, 0x18
jmp 0x4451b0
mov eax, dword [esp + 0x24]
push eax
push ebx
push 0x101
push esi
push edi
call fcn.0043f1e0
add esp, 0x14
mov esi, eax
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4451cc
mov ecx, dword [esp + 0x9c]
push 0
push ecx
call fcn.00491a30
add esp, 8
test esi, esi
jne 0x4451da
mov dword [esp + 0x20], 0xffffffff
jmp 0x4451f3
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x4451eb
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x445208
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x44521d
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x443ee1
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
jmp 0x443ee1
mov edi, dword [esp + 0x9c]
push edi
call fcn.004917d0
mov ecx, dword [esp + 0x14]
mov esi, eax
mov eax, dword [edi + 0x20]
mov edx, ecx
sub edx, eax
mov eax, dword [esi + 8]
sar edx, 2
add esp, 4
cmp edx, eax
jle 0x443ee5
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx]
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x44527e
mov eax, dword [ecx + 4]
push ecx
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [edi + 0x20]
mov edx, ecx
sub edx, eax
mov eax, dword [esi + 8]
sar edx, 2
cmp edx, eax
jg 0x445264
jmp 0x443ee5
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov eax, dword [esi + 4]
cmp eax, 0x55aca8
je 0x44533c
push 0x55aca8
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x445338
mov eax, dword [esi + 4]
cmp eax, 0x55b158
je 0x44530a
push 0x55b158
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x44530a
cmp dword [esi + 4], 0x55d910
je 0x44530a
cmp esi, 0x55ab08
je 0x446124
mov eax, dword [0x58330c]
push str.finally_pops_bad_exception
push eax
call fcn.00440fb0
add esp, 8
jmp 0x44611c
mov eax, dword [esp + 0x10]
sub eax, 4
mov dword [esp + 0x10], eax
mov ebp, dword [eax]
sub eax, 4
mov dword [esp + 0x10], eax
mov ecx, dword [eax]
push ecx
push ebp
push esi
call fcn.00440ed0
add esp, 0xc
mov dword [esp + 0x28], 2
jmp 0x446c39
mov ecx, dword [esp + 0x10]
mov eax, dword [esi + 8]
cmp eax, 3
mov dword [esp + 0x28], eax
je 0x445356
cmp eax, 6
je 0x445356
cmp eax, 5
jne 0x446124
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edx, dword [ecx]
mov dword [esp + 0x3c], edx
jmp 0x446124
mov edi, dword [ecx - 4]
mov ebx, dword [ecx - 8]
mov ebp, dword [ecx - 0xc]
lea eax, [ecx - 8]
mov dword [esp + 0x10], eax
mov eax, dword [edi + 4]
cmp eax, 0x55d780
mov dword [esp + 0x1c], ebx
je 0x445398
push 0x55d780
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x4453b0
push str.__metaclass__
push edi
call fcn.00467ed0
mov esi, eax
add esp, 8
test esi, esi
je 0x4453b0
inc dword [esi]
jmp 0x445400
mov eax, dword [ebx + 4]
cmp eax, 0x55ba48
je 0x4453d0
push 0x55ba48
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x445471
mov eax, dword [ebx + 8]
test eax, eax
jle 0x445471
mov ebx, dword [ebx + 0xc]
push str.__class__
push ebx
call fcn.00431b60
mov esi, eax
add esp, 8
test esi, esi
jne 0x4453fc
call fcn.00441360
mov esi, dword [ebx + 4]
inc dword [esi]
mov ebx, dword [esp + 0x1c]
push edi
push ebx
push ebp
push 0x53e00c
push esi
call fcn.0044f930
mov ebx, eax
mov eax, dword [esi]
add esp, 0x14
dec eax
mov dword [esi], eax
jne 0x445424
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [esp + 0x10]
mov dword [esp + 0x14], ebx
mov dword [edx - 4], ebx
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x445440
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x445455
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x443ee1
mov edx, dword [ebp + 4]
push ebp
call dword [edx + 0x18]
add esp, 4
jmp 0x443ee1
call fcn.00488ef0
push eax
call dword [0x581f10]
add esp, 4
test eax, eax
je 0x4454bb
mov esi, dword [eax + 0x18]
test esi, esi
je 0x4454bb
mov eax, dword [esi + 4]
cmp eax, 0x55d780
je 0x4454a7
push 0x55d780
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x4454bb
push str.__metaclass__
push esi
call fcn.00467ed0
mov esi, eax
add esp, 8
test esi, esi
jne 0x4454c0
mov esi, 0x55d910
inc dword [esi]
jmp 0x445400
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x18]
sub ecx, 4
mov ebp, dword [eax + edx*4 + 0xc]
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov eax, dword [eax + 0x1c]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x445511
push ebp
call fcn.00430950
mov ecx, dword [0x58330c]
add eax, 0x14
push eax
push str.no_locals_found_when_storing__s
push ecx
call fcn.004417a0
add esp, 0x10
jmp 0x443ee1
push esi
push ebp
push eax
call fcn.00465ef0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x4447fa
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x9c]
mov ebp, dword [eax + ecx*4 + 0xc]
mov eax, dword [edx + 0x1c]
push ebp
test eax, eax
mov dword [esp + 0x18], eax
jne 0x445565
call fcn.00430950
add eax, 0x14
push eax
mov eax, dword [0x58330c]
push str.no_locals_when_deleting__s
push eax
call fcn.004417a0
add esp, 0x10
jmp 0x443ee1
push eax
call fcn.00466180
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x443ee1
mov esi, dword [0x583324]
test ebp, ebp
je 0x443ee1
push ebp
call fcn.00438f60
add esp, 4
test eax, eax
je 0x443ee1
push eax
push str.name__.200s_is_not_defined
push esi
call fcn.004417a0
add esp, 0xc
jmp 0x443ee1
mov esi, dword [ecx - 4]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov edi, dword [ecx - 8]
add ecx, 0xfffffff8
push edi
mov ebp, dword [edx + eax*4 + 0xc]
mov dword [esp + 0x14], ecx
push ebp
push esi
call fcn.00431ed0
mov dword [esp + 0x2c], eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esi], eax
jne 0x4455e6
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x443ee1
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
jmp 0x443ee1
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x18]
sub ecx, 4
push 0
mov ebp, dword [eax + edx*4 + 0xc]
mov dword [esp + 0x14], ecx
mov esi, dword [ecx]
push ebp
push esi
call fcn.00431ed0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x446124
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
sub ecx, 4
mov ebp, dword [edx + eax*4 + 0xc]
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov ecx, dword [esp + 0x9c]
push esi
push ebp
mov edx, dword [ecx + 0x18]
push edx
call fcn.00465ef0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x446124
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x9c]
mov ebp, dword [ecx + edx*4 + 0xc]
mov ecx, dword [eax + 0x18]
push ebp
push ecx
call fcn.00466180
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x443ee1
mov esi, dword [0x583324]
test ebp, ebp
je 0x443ee1
push ebp
call fcn.00438f60
add esp, 4
test eax, eax
je 0x443ee1
push eax
push str.global_name__.200s_is_not_defined
push esi
call fcn.004417a0
add esp, 0xc
jmp 0x443ee1
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x9c]
mov ebp, dword [edx + eax*4 + 0xc]
mov eax, dword [esi + 0x1c]
push ebp
test eax, eax
mov dword [esp + 0x18], eax
jne 0x4456fd
call fcn.00430950
mov ecx, dword [0x58330c]
add eax, 0x14
push eax
push str.no_locals_when_loading__s
push ecx
call fcn.004417a0
add esp, 0x10
jmp 0x443ee1
push eax
call fcn.00465e80
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444dd9
mov edx, dword [esi + 0x18]
push ebp
push edx
call fcn.00465e80
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444dd9
mov eax, dword [esi + 0x14]
push ebp
push eax
call fcn.00465e80
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x444dd9
mov esi, dword [0x583324]
test ebp, ebp
je 0x443ee1
push ebp
call fcn.00438f60
add esp, 4
test eax, eax
je 0x443ee1
push eax
push str.name__.200s_is_not_defined
push esi
call fcn.004417a0
add esp, 0xc
jmp 0x443ee1
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov ebp, dword [edx + eax*4 + 0xc]
cmp dword [ebp + 4], 0x55b158
jne 0x4457eb
mov esi, dword [ebp + 0xc]
cmp esi, 0xffffffff
je 0x4457eb
mov edi, dword [esp + 0x9c]
push esi
push ebp
mov eax, dword [edi + 0x18]
push eax
call dword [eax + 0x18]
mov eax, dword [eax + 8]
add esp, 0xc
test eax, eax
mov dword [esp + 0x14], eax
je 0x4457cd
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x44374b
mov eax, dword [edi + 0x14]
push esi
push ebp
push eax
call dword [eax + 0x18]
mov eax, dword [eax + 8]
add esp, 0xc
test eax, eax
mov dword [esp + 0x14], eax
je 0x445820
inc dword [eax]
jmp 0x445a69
mov esi, dword [esp + 0x9c]
push ebp
mov eax, dword [esi + 0x18]
push eax
call fcn.00465e80
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x44588b
mov ecx, dword [esi + 0x14]
push ebp
push ecx
call fcn.00465e80
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x44588b
mov esi, dword [0x583324]
jmp 0x445697
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x18]
mov eax, dword [edx + ecx*4 + 0x14c]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x445852
mov eax, dword [esp + 0x70]
push ecx
mov ecx, dword [eax + 0x24]
jmp 0x4458fa
test eax, eax
mov dword [edx + ecx*4 + 0x14c], 0
je 0x443747
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x443747
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
jmp 0x443744
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x14], eax
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
push eax
mov dword [esp + 0x18], eax
call fcn.00493eb0
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x44597c
mov dword [esp + 0x20], 0xffffffff
call fcn.00441000
test eax, eax
jne 0x443ee1
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x18]
mov eax, dword [edx + 0x140]
cmp ecx, eax
jge 0x445936
mov eax, dword [esp + 0x70]
push ecx
mov ecx, dword [eax + 0x2c]
push ecx
call fcn.00448840
mov esi, dword [0x583370]
add esp, 8
test eax, eax
je 0x443ee1
push eax
call fcn.00438f60
add esp, 4
test eax, eax
je 0x443ee1
push eax
push str.local_variable__.200s_referenced_before_assignment
push esi
call fcn.004417a0
add esp, 0xc
jmp 0x443ee1
mov edx, dword [esp + 0x70]
sub ecx, eax
push ecx
mov eax, dword [edx + 0x28]
push eax
call fcn.00448840
mov esi, dword [0x583324]
add esp, 8
test eax, eax
je 0x443ee1
push eax
call fcn.00438f60
add esp, 4
test eax, eax
je 0x443ee1
push eax
push str.free_variable__.200s_referenced_before_assignment_in_enclosing_scope
push esi
call fcn.004417a0
add esp, 0xc
jmp 0x443ee1
mov ecx, dword [esp + 0x10]
mov dword [ecx], ebp
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x18]
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [edx + eax*4]
mov ebp, dword [ecx]
mov dword [esp + 0x14], eax
push ebp
push eax
call fcn.00493ee0
mov eax, dword [ebp]
add esp, 8
dec eax
mov dword [ebp], eax
jne 0x443747
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
jmp 0x443744
mov edx, dword [esp + 0x18]
push edx
call fcn.004486e0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x443ee1
mov edx, dword [esp + 0x18]
dec edx
mov dword [esp + 0x18], edx
js 0x445a14
lea esi, [edx + 1]
lea ecx, [eax + edx*4 + 0xc]
sub edx, esi
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x10]
sub ecx, 4
sub edx, 4
dec esi
mov dword [esp + 0x10], edx
mov ebp, dword [edx]
mov dword [ecx + 4], ebp
jne 0x4459fe
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x44374b
mov edx, dword [esp + 0x18]
push edx
call fcn.00449680
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x443ee1
mov edx, dword [esp + 0x18]
dec edx
mov dword [esp + 0x18], edx
js 0x445a69
mov ecx, dword [esp + 0x10]
sub ecx, 4
dec edx
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov ecx, dword [eax + 0xc]
mov dword [ecx + edx*4 + 4], ebp
jns 0x445a4e
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x44374b
call fcn.00465a90
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], eax
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
test eax, eax
mov dword [esp + 0x10], ecx
jne 0x44374b
jmp 0x443ee5
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov esi, dword [ecx - 4]
mov ebp, dword [edx + eax*4 + 0xc]
push ebp
push esi
call fcn.00431d90
add esp, 8
mov edi, eax
mov eax, dword [esi]
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x445ad6
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [esp + 0x10]
mov dword [edx - 4], edi
jmp 0x443ed9
mov edi, dword [esp + 0x9c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x18]
push str.__import__
mov edx, dword [edi + 0x14]
mov ebp, dword [eax + ecx*4 + 0xc]
push edx
call fcn.00467ed0
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x14], ebx
jne 0x445b28
mov eax, dword [0x583350]
push str.__import___not_found
push eax
call fcn.00440fb0
add esp, 8
jmp 0x443ee1
mov ecx, dword [esp + 0x10]
mov eax, dword [edi + 0x1c]
test eax, eax
mov esi, dword [ecx - 4]
jne 0x445b3b
mov eax, 0x55ab08
mov edx, dword [edi + 0x18]
push esi
push eax
push edx
push ebp
push str._OOOO_
call fcn.0043fb90
mov ebp, eax
mov eax, dword [esi]
add esp, 0x14
dec eax
mov dword [esi], eax
jne 0x445b62
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
jne 0x445b7a
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], ebp
sub ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
push 0
push ebp
push ebx
call fcn.00448090
mov esi, eax
mov eax, dword [ebp]
add esp, 0xc
dec eax
mov dword [esp + 0x14], esi
mov dword [ebp], eax
jne 0x445b9f
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [esp + 0x10]
test esi, esi
mov dword [edx - 4], esi
jmp 0x443edb
mov esi, dword [esp + 0x9c]
sub ecx, 4
mov dword [esp + 0x10], ecx
push esi
mov ebx, dword [ecx]
mov dword [esp + 0x20], ebx
call fcn.00491800
mov eax, dword [esi + 0x1c]
add esp, 4
test eax, eax
mov dword [esp + 0x14], eax
jne 0x445bed
mov eax, dword [0x58330c]
push str.no_locals_found_during_import_
push eax
call fcn.00440fb0
add esp, 8
jmp 0x443ee1
push str.__all__
push ebx
call fcn.00431b60
mov edi, eax
add esp, 8
test edi, edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], 0
jne 0x445cb6
mov ecx, dword [0x583318]
push ecx
call fcn.004410c0
add esp, 4
test eax, eax
jne 0x445c2c
or esi, 0xffffffff
jmp 0x445db6
call fcn.00441360
push str.__dict__
push ebx
call fcn.00431b60
mov esi, eax
add esp, 8
test esi, esi
jne 0x445c7b
mov edx, dword [0x583318]
push edx
call fcn.004410c0
add esp, 4
test eax, eax
jne 0x445c60
or esi, 0xffffffff
jmp 0x445db6
mov eax, dword [0x583350]
push str.from_import__object_has_no___dict___and_no___all__
push eax
call fcn.00440fb0
add esp, 8
or esi, 0xffffffff
jmp 0x445db6
push 0
push str.keys
push esi
call fcn.0044fa40
mov edi, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x2c], edi
mov dword [esi], eax
jne 0x445ca2
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
test edi, edi
jne 0x445cae
or esi, 0xffffffff
jmp 0x445db6
mov dword [esp + 0x30], 1
xor ebx, ebx
push ebx
push edi
mov dword [esp + 0x2c], ebx
call fcn.0044ed70
mov esi, eax
add esp, 8
test esi, esi
je 0x445d82
mov eax, dword [esp + 0x30]
test eax, eax
je 0x445d0d
mov eax, dword [esi + 4]
cmp eax, 0x55b158
je 0x445cf4
push 0x55b158
push eax
call fcn.00451680
add esp, 8
test eax, eax
je 0x445d0d
cmp byte [esi + 0x14], 0x5f
jne 0x445d0d
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x445d65
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
jmp 0x445d65
mov eax, dword [esp + 0x1c]
push esi
push eax
call fcn.00431d90
mov edi, eax
add esp, 8
test edi, edi
jne 0x445d26
or ebx, 0xffffffff
jmp 0x445d37
mov ecx, dword [esp + 0x14]
push edi
push esi
push ecx
call fcn.00465ef0
add esp, 0xc
mov ebx, eax
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x445d48
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
test edi, edi
je 0x445d5d
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x445d5d
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
mov edi, dword [esp + 0x2c]
test ebx, ebx
jne 0x445d9f
mov eax, dword [esp + 0x24]
inc eax
push eax
push edi
mov dword [esp + 0x2c], eax
call fcn.0044ed70
mov esi, eax
add esp, 8
test esi, esi
jne 0x445cd0
mov ecx, dword [0x58335c]
push ecx
call fcn.004410c0
add esp, 4
test eax, eax
jne 0x445d9a
or ebx, 0xffffffff
jmp 0x445d9f
call fcn.00441360
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x445db0
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
mov esi, ebx
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x9c]
push 0
push eax
mov dword [esp + 0x28], esi
call fcn.00491a30
mov eax, dword [ebx]
add esp, 8
dec eax
mov dword [ebx], eax
jne 0x445ddd
mov ecx, dword [ebx + 4]
push ebx
call dword [ecx + 0x18]
add esp, 4
test esi, esi
je 0x443747
jmp 0x443ee1
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov ecx, dword [ecx - 4]
mov ebp, dword [edx + eax*4 + 0xc]
push ebp
push ecx
call fcn.00431d90
mov esi, eax
add esp, 8
test esi, esi
jne 0x445e37
mov ecx, dword [0x583318]
push ecx
call fcn.004410c0
add esp, 4
test eax, eax
je 0x445e37
push ebp
call fcn.00438f60
mov edx, dword [0x583350]
push eax
push str.cannot_import_name__.230s
push edx
call fcn.004417a0
add esp, 0x10
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], esi
mov dword [eax], esi
mov ecx, dword [esp + 0x10]
add ecx, 4
test esi, esi
mov dword [esp + 0x10], ecx
jne 0x44374b
jmp 0x443ee5
push ebp
call fcn.00432440
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jle 0x445e77
mov dword [esp + 0x20], 0
jmp 0x443747
jne 0x443ee1
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x443747
push ebp
call fcn.00432440
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jle 0x445eb2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x20], 0
add edi, eax
mov dword [esp + 0x34], edi
jmp 0x443747
jne 0x443ee1
jmp 0x443747
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x18]
add edx, eax
mov dword [esp + 0x34], edx
jmp 0x44374b
cmp byte [edi], 0x5c
jne 0x44374b
xor eax, eax
xor edx, edx
mov al, byte [edi + 2]
mov dl, byte [edi + 1]
shl eax, 8
add eax, edx
add edi, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edi
mov edi, 4
sub ecx, edi
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov dword [esp + 0x1c], esi
mov eax, dword [esi + 4]
cmp eax, 0x55ba48
jne 0x445f72
push esi
call fcn.00448800
mov edx, dword [esp + 0x1c]
add esp, 4
cmp eax, edx
je 0x445f37
mov eax, dword [0x583374]
push str.unpack_tuple_of_wrong_size
push eax
call fcn.00440fb0
add esp, 8
jmp 0x44611c
dec edx
mov dword [esp + 0x18], edx
js 0x446124
lea ecx, [edx + 1]
lea eax, [esi + edx*4 + 0xc]
sub edx, ecx
mov dword [esp + 0x18], edx
mov ebp, dword [eax]
sub eax, edi
mov ebx, dword [ebp]
inc ebx
mov dword [ebp], ebx
mov edx, dword [esp + 0x10]
mov dword [edx], ebp
mov edx, dword [esp + 0x10]
add edx, edi
dec ecx
mov dword [esp + 0x10], edx
jne 0x445f4f
jmp 0x446124
cmp eax, 0x55bca8
jne 0x445fde
push esi
call fcn.00449760
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp eax, ecx
je 0x445fa2
mov eax, dword [0x583374]
push str.unpack_list_of_wrong_size
push eax
call fcn.00440fb0
add esp, 8
jmp 0x44611c
mov eax, dword [esp + 0x18]
dec eax
mov dword [esp + 0x18], eax
js 0x446124
mov ecx, dword [esi + 0xc]
mov eax, dword [esp + 0x18]
mov ebp, dword [ecx + eax*4]
mov ebx, dword [ebp]
inc ebx
mov dword [ebp], ebx
mov edx, dword [esp + 0x10]
mov dword [edx], ebp
mov edx, dword [esp + 0x10]
add edx, edi
dec eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], eax
jns 0x445fb1
jmp 0x446124
mov eax, dword [esp + 0x18]
xor edi, edi
lea esi, [eax*4]
mov dword [esp + 0x30], esi
add esi, ecx
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.004502c0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4460f1
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x44602b
push ebx
call fcn.00450350
add esp, 4
test eax, eax
je 0x446069
sub esi, 4
inc edi
mov dword [esi], eax
mov eax, dword [esp + 0x18]
cmp edi, eax
jl 0x446010
push ebx
call fcn.00450350
add esp, 4
test eax, eax
jne 0x446099
call fcn.00441000
test eax, eax
jne 0x4460be
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x446052
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
add ecx, eax
mov dword [esp + 0x10], ecx
jmp 0x446124
call fcn.00441000
test eax, eax
jne 0x4460be
cmp edi, 1
mov eax, 0x5373a4
je 0x446081
mov eax, 0x53ba24
mov edx, dword [0x583374]
push eax
push edi
push str.need_more_than__d_value_s_to_unpack
push edx
call fcn.004417a0
add esp, 0x10
jmp 0x4460be
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x4460aa
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [0x583374]
push str.too_many_values_to_unpack
push edx
call fcn.00440fb0
add esp, 8
test edi, edi
jle 0x4460e0
mov eax, dword [esi]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esi]
cmp dword [eax], 0
jne 0x4460da
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
add esi, 4
dec edi
jne 0x4460c2
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x4460f1
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov ecx, dword [0x58334c]
push ecx
call fcn.004410c0
add esp, 4
test eax, eax
je 0x446118
mov edx, dword [0x58334c]
push str.unpack_non_sequence
push edx
call fcn.00440fb0
add esp, 8
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x28], 1
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x443ee1
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
jmp 0x443ee1
call fcn.00441000
test eax, eax
jne 0x443ee1
mov eax, dword [esp + 0x10]
sub eax, 4
mov dword [esp + 0x10], eax
mov eax, dword [eax]
mov dword [esp + 0x14], eax
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x44616d
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x443747
mov edx, ecx
mov ecx, dword [esp + 0x9c]
mov esi, dword [esp + 0x44]
mov ebx, dword [ecx + 0x20]
sub edi, esi
sub edx, ebx
sar edx, 2
push edx
mov edx, dword [esp + 0x1c]
add edi, edx
push edi
push eax
push ecx
call fcn.00491790
add esp, 0x10
jmp 0x443747
mov eax, dword [esp + 0x18]
xor edx, edx
mov edi, eax
mov dl, ah
and edi, 0xff
mov eax, edx
mov dword [esp + 0x2c], eax
lea ebx, [edi + eax*2]
lea eax, [ebx*4 + 4]
mov edx, eax
mov eax, ecx
sub eax, edx
mov dword [esp + 0x1c], eax
mov esi, dword [eax]
cmp dword [esi + 4], 0x561d88
jne 0x4462f7
mov edx, dword [esp + 0x2c]
test edx, edx
jne 0x4462f7
mov eax, dword [esi + 8]
mov ebx, dword [eax + 8]
test bl, 0xc
je 0x446297
mov esi, dword [esi + 0xc]
mov edx, dword [eax + 4]
mov dword [esp + 0x30], esi
mov esi, ebx
and esi, 4
je 0x446223
test edi, edi
jne 0x446223
mov eax, dword [esp + 0x30]
push edi
push eax
call edx
add esp, 8
mov edi, eax
jmp 0x446500
test bl, 8
je 0x446257
cmp edi, 1
jne 0x446257
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebx, dword [ecx]
mov ecx, dword [esp + 0x30]
push ebx
push ecx
call edx
mov edi, eax
mov eax, dword [ebx]
add esp, 8
dec eax
mov dword [ebx], eax
jne 0x446500
mov edx, dword [ebx + 4]
push ebx
jmp 0x4464fa
test esi, esi
push edi
je 0x44627a
mov eax, dword [eax]
mov ecx, dword [0x58334c]
push eax
push str._.200s___takes_no_arguments___d_given_
push ecx
call fcn.004417a0
add esp, 0x10
xor edi, edi
jmp 0x446500
mov edx, dword [eax]
mov eax, dword [0x58334c]
push edx
push str._.200s___takes_exactly_one_argument___d_given_
push eax
call fcn.004417a0
add esp, 0x10
xor edi, edi
jmp 0x446500
push edi
call fcn.004486e0
add esp, 4
test eax, eax
jne 0x4462a8
xor ebx, ebx
jmp 0x4462ca
dec edi
test edi, edi
jl 0x4462c8
lea ecx, [eax + edi*4 + 0xc]
inc edi
mov edx, dword [esp + 0x10]
sub ecx, 4
sub edx, 4
dec edi
mov dword [esp + 0x10], edx
mov edx, dword [edx]
mov dword [ecx + 4], edx
jne 0x4462b2
mov ebx, eax
push 0
push ebx
push esi
call fcn.00492020
add esp, 0xc
mov edi, eax
test ebx, ebx
je 0x446500
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x446500
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
jmp 0x4464fd
cmp dword [esi + 4], 0x55dbc8
jne 0x44633b
mov ecx, dword [esi + 0xc]
test ecx, ecx
mov dword [esp + 0x30], ecx
je 0x44633b
mov edx, dword [ecx]
inc edx
mov dword [ecx], edx
mov esi, dword [esi + 8]
mov edx, dword [esi]
inc edx
mov dword [esi], edx
mov edx, dword [eax]
dec dword [edx]
mov edx, dword [eax]
cmp dword [edx], 0
jne 0x446335
mov ecx, dword [edx + 4]
push edx
call dword [ecx + 0x18]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
add esp, 4
inc edi
mov dword [eax], ecx
inc ebx
jmp 0x44633d
inc dword [esi]
cmp dword [esi + 4], 0x562078
jne 0x44644f
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0x24], edx
xor ecx, ecx
xor edx, edx
test eax, eax
jne 0x446408
mov eax, dword [esp + 0x24]
cmp dword [eax + 8], ebx
jne 0x44640e
cmp dword [esp + 0x2c], edx
jne 0x44640e
cmp dword [eax + 0x14], 0x43
jne 0x44640e
mov ecx, dword [0x581f0c]
push edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x30], ecx
push edx
push eax
push ecx
call fcn.00491510
mov edi, eax
add esp, 0x10
test edi, edi
je 0x4464ef
lea eax, [ebx*4]
mov ecx, eax
mov eax, dword [esp + 0x10]
sub eax, ecx
xor ecx, ecx
test ebx, ebx
jle 0x4463d7
mov edx, dword [eax]
add eax, 4
inc dword [edx]
mov edx, dword [eax - 4]
mov dword [edi + ecx*4 + 0x14c], edx
inc ecx
cmp ecx, ebx
jl 0x4463c1
push edi
call fcn.00443540
mov ebx, dword [esp + 0x30]
add esp, 4
mov dword [esp + 0x30], eax
mov ecx, dword [ebx + 0xc]
inc ecx
mov dword [ebx + 0xc], ecx
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x446400
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
dec dword [ebx + 0xc]
jmp 0x4464eb
mov edx, dword [eax + 8]
lea ecx, [eax + 0xc]
mov eax, dword [esi + 0x14]
push eax
mov eax, dword [esp + 0x30]
push edx
push ecx
push eax
lea ecx, [eax*8]
mov eax, dword [esp + 0x20]
mov edx, eax
sub edx, ecx
lea ecx, [ebx*4]
push edx
mov edx, dword [esp + 0x44]
sub eax, ecx
push edi
push eax
mov eax, dword [esp + 0x40]
push 0
push edx
push eax
call fcn.00447690
add esp, 0x28
mov edi, eax
jmp 0x4464ef
mov ecx, dword [esp + 0x2c]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], eax
jle 0x44647d
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x10]
push esi
push ecx
push edx
push eax
call fcn.00448220
add esp, 0x10
mov dword [esp + 0x24], eax
test eax, eax
je 0x4464eb
push edi
call fcn.004486e0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4464d2
dec edi
test edi, edi
jl 0x4464ae
lea eax, [ebx + edi*4 + 0xc]
lea edx, [edi + 1]
mov ecx, dword [esp + 0x10]
sub eax, 4
sub ecx, 4
dec edx
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
jne 0x446498
mov edx, dword [esp + 0x24]
push edx
push ebx
push esi
call fcn.0044f8c0
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 0xc
dec eax
mov dword [ebx], eax
jne 0x4464d2
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4464eb
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x4464eb
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov edi, dword [esp + 0x30]
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x446500
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
cmp eax, esi
jbe 0x44652e
sub eax, 4
mov dword [esp + 0x10], eax
mov eax, dword [eax]
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x446526
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, esi
ja 0x44650c
mov dword [eax], edi
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x14], edi
test edi, edi
mov dword [esp + 0x10], ecx
jne 0x44374b
jmp 0x443ee5
mov edx, dword [esp + 0x18]
xor ebx, ebx
mov edi, edx
mov bl, dh
and edi, 0xff
inc eax
and eax, 3
mov edx, ebx
mov esi, eax
mov dword [esp + 0x30], edx
and esi, 1
lea edx, [edi + edx*2]
mov dword [esp + 0x7c], esi
je 0x446575
inc edx
and eax, 2
mov dword [esp + 0x90], eax
je 0x446582
inc edx
lea edx, [edx*4 + 4]
sub ecx, edx
mov ebx, ecx
mov dword [esp + 0x64], ebx
mov eax, dword [ebx]
mov dword [esp + 0x1c], eax
cmp dword [eax + 4], 0x55dbc8
jne 0x4465db
mov esi, dword [eax + 0xc]
test esi, esi
je 0x4465db
mov ecx, dword [esi]
inc ecx
mov dword [esi], ecx
mov ecx, eax
mov ecx, dword [ecx + 8]
mov dword [esp + 0x1c], ecx
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [ebx]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [ebx]
cmp dword [eax], 0
jne 0x4465d6
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
mov ecx, dword [esp + 0x20]
add esp, 4
mov dword [ebx], esi
inc edi
jmp 0x4465e6
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov ecx, eax
mov eax, dword [esp + 0x90]
xor edx, edx
xor ebx, ebx
cmp eax, edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x14], edx
je 0x446721
mov eax, dword [esp + 0x10]
sub eax, 4
mov dword [esp + 0x10], eax
mov eax, dword [eax]
cmp eax, edx
mov dword [esp + 0x2c], eax
je 0x446642
mov eax, dword [eax + 4]
cmp eax, 0x55d780
je 0x446723
push 0x55d780
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x446721
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 4]
cmp eax, 0x55dbc8
jne 0x446653
mov esi, 0x5379fc
jmp 0x44668e
cmp eax, 0x562078
jne 0x446661
mov esi, 0x5379fc
jmp 0x44668e
cmp eax, 0x561d88
jne 0x44666f
mov esi, 0x5379fc
jmp 0x44668e
cmp eax, 0x55d910
jne 0x44667d
mov esi, str._constructor
jmp 0x44668e
cmp eax, 0x55dab8
mov esi, str._instance
je 0x44668e
mov esi, str._object
cmp eax, 0x55dbc8
jne 0x4466a7
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 8]
push ecx
call fcn.00448160
add esp, 4
jmp 0x446706
cmp eax, 0x562078
jne 0x4466c0
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0x1c]
push eax
call fcn.00438f60
add esp, 4
jmp 0x446706
cmp eax, 0x561d88
jne 0x4466ce
mov ecx, dword [ecx + 8]
mov eax, dword [ecx]
jmp 0x446706
cmp eax, 0x55d910
jne 0x4466e7
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0x10]
push eax
call fcn.00438f60
add esp, 4
jmp 0x446706
cmp eax, 0x55dab8
jne 0x446703
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0x10]
push eax
call fcn.00438f60
add esp, 4
jmp 0x446706
mov eax, dword [eax + 0xc]
mov ecx, dword [0x58334c]
push esi
push eax
push str._s_s_argument_after__must_be_a_dictionary
push ecx
call fcn.004417a0
add esp, 0x10
jmp 0x446923
xor edx, edx
cmp dword [esp + 0x7c], edx
je 0x446878
mov eax, dword [esp + 0x10]
sub eax, 4
mov dword [esp + 0x10], eax
mov esi, dword [eax]
mov dword [esp + 0x24], esi
mov eax, dword [esi + 4]
cmp eax, 0x55ba48
je 0x446875
push 0x55ba48
push eax
call fcn.00451680
add esp, 8
test eax, eax
jne 0x446875
push esi
call fcn.0044f1d0
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x44685e
mov edx, dword [0x58334c]
push edx
call fcn.004410c0
add esp, 4
test eax, eax
je 0x446923
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 4]
cmp eax, 0x55dbc8
jne 0x4467a1
mov esi, 0x5379fc
jmp 0x4467dc
cmp eax, 0x562078
jne 0x4467af
mov esi, 0x5379fc
jmp 0x4467dc
cmp eax, 0x561d88
jne 0x4467bd
mov esi, 0x5379fc
jmp 0x4467dc
cmp eax, 0x55d910
jne 0x4467cb
mov esi, str._constructor
jmp 0x4467dc
cmp eax, 0x55dab8
mov esi, str._instance
je 0x4467dc
mov esi, str._object
cmp eax, 0x55dbc8
jne 0x4467f1
mov eax, dword [ecx + 8]
push eax
call fcn.00448160
add esp, 4
jmp 0x446844
cmp eax, 0x562078
jne 0x446806
mov ecx, dword [ecx + 0x1c]
push ecx
call fcn.00438f60
add esp, 4
jmp 0x446844
cmp eax, 0x561d88
jne 0x446814
mov edx, dword [ecx + 8]
mov eax, dword [edx]
jmp 0x446844
cmp eax, 0x55d910
jne 0x446829
mov eax, dword [ecx + 0x10]
push eax
call fcn.00438f60
add esp, 4
jmp 0x446844
cmp eax, 0x55dab8
jne 0x446841
mov ecx, dword [ecx + 8]
mov edx, dword [ecx + 0x10]
push edx
call fcn.00438f60
add esp, 4
jmp 0x446844
mov eax, dword [eax + 0xc]
push esi
push eax
mov eax, dword [0x58334c]
push str._s_s_argument_after__must_be_a_sequence
push eax
call fcn.004417a0
add esp, 0x10
jmp 0x446923
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x44686f
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov esi, ebx
mov dword [esp + 0x24], esi
mov ebx, dword [esi + 8]
mov eax, dword [esp + 0x30]
test eax, eax
jle 0x4468a8
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
lea eax, [esp + 0x10]
push edx
mov edx, dword [esp + 0x30]
push eax
push ecx
push edx
call fcn.00448220
add esp, 0x10
mov dword [esp + 0x2c], eax
test eax, eax
je 0x44693c
lea eax, [ebx + edi]
push eax
call fcn.004486e0
mov esi, eax
add esp, 4
test esi, esi
je 0x446923
test ebx, ebx
jle 0x4468d9
mov ecx, dword [esp + 0x24]
lea edx, [esi + edi*4 + 0xc]
add ecx, 0xc
mov eax, dword [ecx]
add ecx, 4
add edx, 4
inc dword [eax]
mov dword [edx - 4], eax
dec ebx
jne 0x4468c9
dec edi
test edi, edi
jl 0x4468fb
lea eax, [esi + edi*4 + 0xc]
lea edx, [edi + 1]
mov ecx, dword [esp + 0x10]
sub eax, 4
sub ecx, 4
dec edx
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
jne 0x4468e5
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
push edx
push esi
push eax
call fcn.0044f8c0
mov dword [esp + 0x20], eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esi], eax
jne 0x446923
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x44693c
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x44693c
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x446955
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x446955
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x14], esi
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x446972
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x64]
cmp eax, edi
jbe 0x445e3f
sub eax, 4
mov dword [esp + 0x10], eax
mov ebp, dword [eax]
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x44699e
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, edi
ja 0x446982
jmp 0x445e3f
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov ecx, dword [esp + 0x9c]
mov edx, dword [ecx + 0x18]
push edx
push esi
call fcn.004931c0
mov ebx, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x4469df
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test ebx, ebx
je 0x446a47
mov edi, dword [esp + 0x18]
test edi, edi
jle 0x446a47
push edi
call fcn.004486e0
mov esi, eax
add esp, 4
test esi, esi
je 0x446b20
dec edi
mov dword [esp + 0x18], edi
js 0x446a28
lea edx, [edi + 1]
lea eax, [esi + edi*4 + 0xc]
sub edi, edx
mov dword [esp + 0x18], edi
mov ecx, dword [esp + 0x10]
sub eax, 4
sub ecx, 4
dec edx
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov dword [eax + 4], ebp
jne 0x446a12
push esi
push ebx
call fcn.004932c0
mov dword [esp + 0x28], eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x446a47
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
mov dword [eax], ebx
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x443ee5
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov ecx, dword [esp + 0x9c]
mov edx, dword [ecx + 0x18]
push edx
push esi
call fcn.004931c0
mov ebx, eax
mov eax, dword [esi + 0x28]
add esp, 8
mov dword [esp + 0x14], ebx
mov edi, dword [eax + 8]
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x446a97
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
je 0x446a47
test edi, edi
jle 0x446b05
push edi
call fcn.004486e0
mov esi, eax
add esp, 4
test esi, esi
jne 0x446ac8
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x446b31
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x14], esi
jmp 0x443ee1
dec edi
js 0x446ae6
lea eax, [esi + edi*4 + 0xc]
inc edi
mov ecx, dword [esp + 0x10]
sub eax, 4
sub ecx, 4
dec edi
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov dword [eax + 4], ebp
jne 0x446ad0
push esi
push ebx
call fcn.00493360
mov dword [esp + 0x28], eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x446b05
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov edi, dword [esp + 0x18]
test edi, edi
jle 0x446a47
push edi
call fcn.004486e0
mov esi, eax
add esp, 4
test esi, esi
jne 0x446b3e
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x446b31
mov ecx, dword [ebx + 4]
push ebx
call dword [ecx + 0x18]
add esp, 4
mov dword [esp + 0x14], 0
jmp 0x443ee1
dec edi
mov dword [esp + 0x18], edi
js 0x446a28
lea edx, [edi + 1]
lea eax, [esi + edi*4 + 0xc]
sub edi, edx
mov dword [esp + 0x18], edi
mov ecx, dword [esp + 0x10]
sub eax, 4
sub ecx, 4
dec edx
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov dword [eax + 4], ebp
jne 0x446b56
jmp 0x446a28
cmp dword [esp + 0x18], 3
jne 0x446b83
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x446b85
xor ebp, ebp
sub ecx, 4
push ebp
mov dword [esp + 0x14], ecx
mov edi, dword [ecx]
mov esi, dword [ecx - 4]
push edi
push esi
call fcn.0048bf90
mov ebx, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x446bb3
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x446bc4
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
test ebp, ebp
je 0x446bdb
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x446bdb
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
test ebx, ebx
mov dword [ecx - 4], ebx
jmp 0x443edb
push eax
mov eax, dword [esp + 0xa0]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x10]
push edx
push eax
call fcn.00483200
add esp, 8
push eax
push str.XXX_lineno:__d__opcode:__d_n
push 0x568268
call fcn.004e90e7
mov ecx, dword [0x58330c]
push 0x53dcc0
push ecx
call fcn.00440fb0
add esp, 0x18
mov dword [esp + 0x28], 1
jmp 0x446c39
cmp eax, 1
je 0x446c39
cmp eax, 2
jne 0x446c68
call fcn.00441000
test eax, eax
jne 0x446c60
mov edx, dword [0x58330c]
push str.error_return_without_exception_set
push edx
call fcn.00440fb0
add esp, 8
mov dword [esp + 0x28], 1
jmp 0x446c71
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
cmp eax, 1
jne 0x446e03
mov eax, dword [esp + 0x9c]
push eax
call fcn.00492d50
mov esi, dword [esp + 0x3c]
add esp, 4
mov ebx, dword [esi + 0x1c]
test ebx, ebx
je 0x444a2f
mov ecx, dword [esi + 0x24]
lea edx, [esp + 0x5c]
mov dword [esp + 0x64], ecx
lea eax, [esp + 0x58]
push edx
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00441330
mov eax, dword [esp + 0x64]
add esp, 0xc
test eax, eax
jne 0x446ccc
mov ecx, dword [0x55ab08]
mov eax, 0x55ab08
inc ecx
mov dword [esp + 0x58], eax
mov dword [0x55ab08], ecx
mov edx, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [esp + 0x68]
push eax
push str._OOO_
call fcn.0043fb90
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x446d0a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x60]
push ecx
push edx
push eax
call fcn.00440ed0
mov ecx, dword [esp + 0x1c]
add esp, 0xc
jmp 0x444a37
mov ecx, dword [esp + 0x9c]
mov esi, dword [ecx + 0x38]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x446d1f
xor esi, esi
jmp 0x446d65
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x64]
push edi
push 1
push edx
push eax
mov dword [esi + 0x10], 1
mov dword [esi + 0x14], 0
call ebx
mov ecx, dword [esi + 0x1c]
add esp, 0x10
test ecx, ecx
jne 0x446d54
mov ecx, dword [esi + 0x18]
test ecx, ecx
jne 0x446d54
xor ecx, ecx
jmp 0x446d59
mov ecx, 1
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0x10]
dec ecx
mov dword [esi + 0x10], ecx
mov esi, eax
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x446d76
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test esi, esi
jne 0x446d96
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
push edx
push eax
push ecx
call fcn.00440ed0
add esp, 0xc
jmp 0x444a2f
mov eax, dword [esp + 0x60]
test eax, eax
je 0x446db6
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x60]
cmp dword [eax], 0
jne 0x446db6
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x58]
test eax, eax
je 0x446dd6
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x58]
cmp dword [eax], 0
jne 0x446dd6
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x444a2f
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x5c]
cmp dword [eax], 0
jne 0x444a2f
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x444a2f
cmp eax, 2
jne 0x446e15
mov dword [esp + 0x28], 1
jmp 0x444a33
test eax, eax
je 0x44374b
jmp 0x444a33
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push eax
push ecx
push edx
push ebx
call fcn.00491790
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x54]
add esp, 0x10
mov dword [esp + 0x28], 0
mov eax, dword [ecx + 8]
add eax, edx
mov dword [esp + 0x34], eax
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x443747
mov eax, dword [ecx + 4]
push ecx
call dword [eax + 0x18]
jmp 0x443744
cmp edx, 1
jne 0x447070
lea ecx, [esp + 0x50]
lea edx, [esp + 0x68]
push ecx
lea eax, [esp + 0x58]
push edx
push eax
call fcn.00441330
mov eax, dword [esp + 0x74]
add esp, 0xc
test eax, eax
jne 0x446ea1
mov eax, dword [0x55ab08]
mov dword [esp + 0x68], 0x55ab08
inc eax
mov dword [0x55ab08], eax
cmp dword [edi], 0x79
jne 0x447021
lea ecx, [esp + 0x50]
lea edx, [esp + 0x68]
push ecx
lea eax, [esp + 0x58]
push edx
push eax
call fcn.00441180
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x74]
mov dword [esp + 0x70], eax
mov eax, dword [esi + 8]
mov dword [esp + 0x30], ecx
add esp, 0xc
mov dword [esp + 0x30], edx
mov ecx, dword [eax + 0x2c]
test ecx, ecx
jne 0x446f77
mov ecx, dword [esi + 0x34]
test ecx, ecx
jne 0x446f02
mov ecx, dword [0x55ab08]
inc ecx
mov dword [0x55ab08], ecx
mov dword [esi + 0x34], 0x55ab08
mov ecx, dword [esi + 0x34]
mov edx, dword [eax + 0x2c]
mov edi, dword [eax + 0x30]
mov ebx, dword [eax + 0x34]
test ecx, ecx
je 0x446f14
inc dword [ecx]
mov ecx, dword [esi + 0x38]
test ecx, ecx
je 0x446f1d
inc dword [ecx]
mov ecx, dword [esi + 0x3c]
test ecx, ecx
je 0x446f26
inc dword [ecx]
mov ecx, dword [esi + 0x34]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esi + 0x38]
mov dword [eax + 0x30], ecx
mov ecx, dword [esi + 0x3c]
test edx, edx
mov dword [eax + 0x34], ecx
je 0x446f4d
mov eax, dword [edx]
dec eax
mov dword [edx], eax
jne 0x446f4d
mov eax, dword [edx + 4]
push edx
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x446f62
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x446f62
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
je 0x446f77
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x446f77
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov ebx, dword [esp + 0x64]
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x34]
mov edi, dword [esi + 0x38]
test ebx, ebx
mov dword [esp + 0x2c], ecx
je 0x446f8e
inc dword [ebx]
mov edx, dword [esp + 0x30]
test edx, edx
je 0x446f98
inc dword [edx]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x446fa2
inc dword [ecx]
test eax, eax
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], edx
mov dword [esi + 0x3c], ecx
je 0x446fc0
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x446fc0
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
test edi, edi
je 0x446fd5
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x446fd5
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x446fee
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x446fee
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
push ebx
push str.exc_type
call fcn.0048c490
mov edx, dword [esp + 0x38]
push edx
push str.exc_value
call fcn.0048c490
mov eax, dword [esp + 0x34]
push eax
push str.exc_traceback
call fcn.0048c490
mov edi, dword [esp + 0x94]
add esp, 0x18
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x447042
mov ecx, dword [0x55ab08]
inc ecx
mov dword [0x55ab08], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx], 0x55ab08
jmp 0x447048
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov eax, dword [esp + 0x10]
add eax, 4
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x68]
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x54]
add eax, 4
mov dword [esp + 0x10], eax
mov dword [eax], edx
jmp 0x44709e
cmp edx, 3
je 0x44707a
cmp edx, 5
jne 0x44708b
mov eax, dword [esp + 0x3c]
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
add eax, 4
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x28]
push ecx
call fcn.00435c70
mov edx, dword [esp + 0x14]
add esp, 4
mov dword [edx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x44]
add eax, edx
mov dword [esp + 0x28], 0
mov dword [esp + 0x34], eax
jmp 0x44374b
cmp edi, 6
je 0x447107
mov ebp, dword [ebx + 0x20]
mov eax, ecx
sub eax, ebp
test eax, 0xfffffffc
je 0x447107
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [ecx]
test eax, eax
je 0x4470f8
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x4470f4
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
mov ebp, dword [ebx + 0x20]
mov edx, ecx
sub edx, ebp
test edx, 0xfffffffc
jne 0x4470d6
cmp edi, 3
je 0x447119
cmp edi, 6
je 0x447119
mov dword [esp + 0x3c], 0
mov eax, dword [esi + 0x14]
test eax, eax
je 0x44730a
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x1c]
test edx, edx
je 0x4471ab
mov eax, dword [esp + 0x28]
cmp eax, 3
je 0x44713d
cmp eax, 6
jne 0x4471ab
mov ecx, dword [esp + 0x38]
xor ebx, ebx
mov eax, dword [ecx + 0x24]
mov ecx, dword [esp + 0x9c]
mov esi, dword [ecx + 0x38]
cmp dword [esi + 0x10], ebx
jne 0x4471ab
mov edi, dword [esp + 0x3c]
mov ebp, 1
push edi
push 3
push ecx
push eax
mov dword [esi + 0x10], ebp
mov dword [esi + 0x14], ebx
call edx
mov ecx, dword [esi + 0x1c]
add esp, 0x10
cmp ecx, ebx
jne 0x44717e
cmp dword [esi + 0x18], ebx
jne 0x44717e
xor ecx, ecx
jmp 0x447180
mov ecx, ebp
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [esi + 0x10], edx
je 0x4471ab
cmp edi, ebx
je 0x4471a3
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x4471a3
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0x38]
xor ebp, ebp
mov edi, dword [eax + 0x18]
cmp edi, ebp
je 0x44730a
mov ecx, dword [esp + 0x28]
mov edx, 1
cmp ecx, edx
jne 0x4472a8
mov ebx, dword [eax + 0x20]
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x50]
push eax
lea edx, [esp + 0x58]
push ecx
push edx
call fcn.00441330
mov eax, dword [esp + 0xa8]
add esp, 0xc
mov esi, dword [eax + 0x38]
cmp dword [esi + 0x10], ebp
jne 0x44722d
push ebp
push 3
push eax
push ebx
mov dword [esi + 0x10], 1
mov dword [esi + 0x14], ebp
call edi
mov ecx, dword [esi + 0x1c]
add esp, 0x10
cmp ecx, ebp
jne 0x44721a
cmp dword [esi + 0x18], ebp
jne 0x44721a
xor ecx, ecx
jmp 0x44721f
mov ecx, 1
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebp
mov dword [esi + 0x10], edx
jne 0x447249
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
push eax
push ecx
push edx
call fcn.00440ed0
add esp, 0xc
jmp 0x44730a
mov eax, dword [esp + 0x54]
cmp eax, ebp
je 0x447268
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x54]
cmp dword [eax], ebp
jne 0x447268
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x50]
cmp eax, ebp
je 0x447287
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x50]
cmp dword [eax], ebp
jne 0x447287
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x4c]
cmp eax, ebp
je 0x44730a
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x4c]
cmp dword [eax], ebp
jne 0x44730a
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
jmp 0x44730a
mov ecx, dword [esp + 0x9c]
mov eax, dword [eax + 0x20]
mov esi, dword [ecx + 0x38]
cmp dword [esi + 0x10], ebp
jne 0x44730a
mov ebx, dword [esp + 0x3c]
mov dword [esi + 0x10], edx
push ebx
push 3
push ecx
push eax
mov dword [esi + 0x14], ebp
call edi
mov ecx, dword [esi + 0x1c]
add esp, 0x10
cmp ecx, ebp
jne 0x4472de
cmp dword [esi + 0x18], ebp
jne 0x4472de
xor ecx, ecx
jmp 0x4472e3
mov ecx, 1
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebp
mov dword [esi + 0x10], edx
je 0x44730a
cmp ebx, ebp
je 0x447306
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x447306
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x3c], ebp
mov edi, dword [esp + 0x38]
mov esi, dword [edi + 8]
mov eax, dword [esi + 0x2c]
test eax, eax
je 0x4473bc
mov edx, dword [eax]
mov ecx, dword [edi + 0x34]
mov ebx, dword [edi + 0x38]
mov ebp, dword [edi + 0x3c]
inc edx
mov dword [eax], edx
mov eax, dword [esi + 0x30]
test eax, eax
je 0x447333
inc dword [eax]
mov eax, dword [esi + 0x34]
test eax, eax
je 0x44733c
inc dword [eax]
mov eax, dword [esi + 0x2c]
mov dword [edi + 0x34], eax
mov edx, dword [esi + 0x30]
mov dword [edi + 0x38], edx
mov eax, dword [esi + 0x34]
test ecx, ecx
mov dword [edi + 0x3c], eax
je 0x447363
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x447363
mov edx, dword [ecx + 4]
push ecx
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x447378
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x447378
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x44738f
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x44738f
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [esi + 0x2c]
push edx
push str.exc_type
call fcn.0048c490
mov eax, dword [esi + 0x30]
push eax
push str.exc_value
call fcn.0048c490
mov ecx, dword [esi + 0x34]
push ecx
push str.exc_traceback
call fcn.0048c490
add esp, 0x18
mov eax, dword [esi + 0x2c]
mov ebx, dword [esi + 0x30]
mov ebp, dword [esi + 0x34]
xor ecx, ecx
cmp eax, ecx
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x30], ecx
mov dword [esi + 0x34], ecx
je 0x4473e5
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x4473e5
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x4473fa
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x4473fa
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x447411
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x447411
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [edi + 0xc]
mov edx, dword [esp + 0x9c]
dec eax
mov dword [edi + 0xc], eax
mov eax, dword [edx + 0xc]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x3c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x88
ret