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

Disassembly:
sub esp, 0x88
push ebx
push ebp
mov ebp, dword [0x52c1bc]
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 0x438cb9
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 0x438cf2
call fcn.00429c90
test eax, eax
je 0x438cf2
mov edx, dword [0x52d258]
push str.Stack_overflow
push edx
call fcn.0043f0c0
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 [0x516960]
mov eax, edx
cmp eax, ecx
jle 0x438d2f
dec eax
push str.maximum_recursion_depth_exceeded
mov dword [ebp + 0xc], eax
mov eax, dword [0x52d200]
push eax
call fcn.0043f0c0
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 0x438e09
mov ecx, dword [ebp + 0x1c]
cmp ecx, ebx
je 0x438da3
mov edi, dword [esi + 0x38]
mov eax, dword [ebp + 0x24]
cmp dword [edi + 0x10], ebx
jne 0x438da3
push 0x517ac8
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 0x438d76
cmp dword [edi + 0x18], ebx
jne 0x438d76
xor ecx, ecx
jmp 0x438d7b
mov ecx, 1
mov edx, dword [edi + 0x10]
mov dword [edi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [edi + 0x10], edx
je 0x438da3
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 0x438e09
mov edi, dword [esi + 0x38]
mov eax, dword [ebp + 0x20]
cmp dword [edi + 0x10], ebx
jne 0x438e09
push 0x517ac8
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 0x438ddc
cmp dword [edi + 0x18], ebx
jne 0x438ddc
xor ecx, ecx
jmp 0x438de1
mov ecx, 1
mov edx, dword [edi + 0x10]
mov dword [edi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [edi + 0x10], edx
je 0x438e09
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], 0x517ac8
xor ebp, ebp
jmp 0x438e7b
add esp, 4
mov ecx, dword [esp + 0x10]
mov edx, dword [0x516968]
dec edx
mov dword [0x516968], edx
jns 0x438f2c
mov eax, dword [esp + 0x34]
cmp byte [eax], 0x7a
je 0x438f2c
mov ecx, dword [0x516964]
mov eax, dword [esp + 0x38]
mov dword [0x516968], ecx
xor edi, edi
mov ecx, dword [eax + 0x44]
inc ecx
mov dword [eax + 0x44], ecx
mov eax, dword [0x52b480]
cmp eax, edi
je 0x438f28
cmp dword [0x52b488], edi
jne 0x438f28
mov dword [0x52b480], edi
mov eax, dword [0x52b478]
mov ecx, dword [0x52b47c]
mov esi, 1
cmp eax, ecx
mov dword [0x52b488], esi
je 0x438f22
mov ecx, dword [eax*8 + 0x52b378]
mov edx, dword [eax*8 + 0x52b37c]
inc eax
and eax, 0x8000001f
jns 0x438f00
dec eax
or eax, 0xffffffe0
inc eax
push edx
mov dword [0x52b478], eax
call ecx
add esp, 4
test eax, eax
jl 0x43901a
mov eax, dword [0x52b478]
mov ecx, dword [0x52b47c]
cmp eax, ecx
jne 0x438ee5
mov dword [0x52b488], 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 0x4390e4
mov esi, dword [eax + 0x10]
test esi, esi
jne 0x4390e4
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 0x438f8c
cmp edi, dword [esp + 0x78]
jl 0x4390ac
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 0x438fee
mov esi, dword [esp + 0x30]
xor eax, eax
mov al, byte [edi]
add eax, edx
cmp eax, esi
jg 0x438fea
inc edi
mov edx, eax
mov al, byte [edi]
test al, al
je 0x438fd5
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 0x438fb7
mov dword [esp + 0x2c], edx
cmp edx, dword [esp + 0x30]
jne 0x439081
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 0x43902f
mov dword [esp + 0x1c], 0
jmp 0x439081
mov dword [0x52b488], edi
mov dword [0x52b480], esi
mov dword [esp + 0x28], esi
jmp 0x43c35b
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x34]
push 0x517ac8
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 0x43906a
mov ecx, dword [esi + 0x18]
test ecx, ecx
jne 0x43906a
xor ecx, ecx
jmp 0x43906f
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 0x4390a4
mov esi, dword [esp + 0x2c]
dec ebx
js 0x43909e
xor edx, edx
mov al, byte [edi + 1]
mov dl, byte [edi]
add esi, edx
inc edi
inc edi
test al, al
jne 0x43909e
dec ebx
jns 0x43908c
mov dword [esp + 0x78], esi
jmp 0x4390ac
mov dword [esp + 0x78], 0x7fffffff
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 0x4390dc
mov ecx, eax
mov dword [edx + 0x24], 0
mov dword [esp + 0x10], ecx
test esi, esi
jne 0x439607
mov edi, dword [esp + 0x34]
xor eax, eax
mov al, byte [edi]
inc edi
cmp eax, 0x5a
mov dword [esp + 0x34], edi
jl 0x439112
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.0x439129.96
xor edx, edx
mov dl, byte [esi + 0x43ccd8]
jmp dword [edx*4 + 0x43cb58]
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 0x43910e
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 0x43af67
jmp 0x439188
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 0x438f30
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 0x438f30
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 0x438f30
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 0x438f30
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 0x438f30
mov eax, dword [esp + 0x18]
cmp eax, 2
jne 0x439273
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 0x438f30
cmp eax, 3
jne 0x4395c2
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 0x438f30
sub ecx, 4
mov eax, 0x518248
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov ebx, dword [ecx - 4]
cmp dword [ebp + 4], eax
jne case.0x4392f1.6
cmp dword [ebx + 4], eax
jne case.0x4392f1.6
mov edx, dword [esp + 0x18]
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 8]
cmp edx, 9
ja case.0x4392f1.6
jmp dword [edx*4 + 0x43cd68]
xor edx, edx
cmp eax, ecx
setl dl
mov eax, edx
jmp 0x43934a
xor edx, edx
cmp eax, ecx
setle dl
mov eax, edx
jmp 0x43934a
xor edx, edx
cmp eax, ecx
sete dl
mov eax, edx
jmp 0x43934a
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
jmp 0x43934a
xor edx, edx
cmp eax, ecx
setg dl
mov eax, edx
jmp 0x43934a
xor edx, edx
cmp eax, ecx
setge dl
mov eax, edx
jmp 0x43934a
xor eax, eax
cmp ebx, ebp
sete al
jmp 0x43934a
xor eax, eax
cmp ebx, ebp
setne al
test eax, eax
mov esi, 0x51877c
jne 0x4393c8
mov esi, 0x518770
inc dword [esi]
jmp 0x4393d9
mov eax, dword [esp + 0x18]
lea ecx, [eax - 6]
cmp ecx, 4
ja case.default.0x439368
jmp dword [ecx*4 + 0x43cd90]
xor eax, eax
cmp ebx, ebp
sete al
jmp 0x4393ba
xor eax, eax
cmp ebx, ebp
setne al
jmp 0x4393ba
push ebx
push ebp
call fcn.00485990
add esp, 8
test eax, eax
jge 0x4393bc
xor esi, esi
jmp 0x4393d9
push ebx
push ebp
call fcn.00485990
add esp, 8
test eax, eax
jge 0x4393a5
xor esi, esi
jmp 0x4393d9
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
jmp 0x4393ba
push ebp
push ebx
call fcn.0043f120
add esp, 8
test eax, eax
mov esi, 0x51877c
jne 0x4393c8
mov esi, 0x518770
inc dword [esi]
jmp 0x4393d9
push eax
push ebp
push ebx
call fcn.0044bc20
add esp, 0xc
mov esi, eax
mov eax, dword [ebx]
mov dword [esp + 0x14], esi
dec eax
mov dword [ebx], eax
jne 0x4393ee
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 0x439401
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 0x439603
mov al, byte [edi]
cmp al, 0x6f
jne 0x439458
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, 0x51877c
je 0x439489
cmp ebp, 0x518770
jne 0x43b57b
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x438f30
cmp al, 0x70
jne 0x438e77
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, 0x518770
jne 0x4394be
cmp byte [edi], 1
jne 0x438f30
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 0x438f28
mov edx, dword [ecx + 4]
push ecx
call dword [edx + 0x18]
mov ecx, dword [esp + 0x14]
add esp, 4
jmp 0x438f30
cmp ebp, 0x51877c
jne 0x43b5ac
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x438f30
mov esi, dword [ecx - 4]
push esi
call fcn.00486340
mov ebx, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x4394fa
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov ecx, dword [esp + 0x10]
test ebx, ebx
je 0x4396c0
mov dword [ecx - 4], ebx
mov al, byte [edi]
cmp al, 0x5d
jne 0x438e77
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.004863d0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x43b860
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 0x43b5f2
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 0x438f28
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x438f28
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x438f28
push str.invalid_argument_to_DUP_TOPX__bytecode_corruption__
call fcn.00429c50
add esp, 4
jmp 0x439603
mov esi, dword [ecx - 4]
push esi
call fcn.00484870
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x4395f4
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 0x438e77
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x43c351
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x439627
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x438e7b
mov dword [esp + 0x28], 1
mov dword [esp + 0x14], 0x517ac8
mov dword [esp + 0x20], 0
jmp 0x43c35b
mov esi, dword [ecx - 4]
push esi
call fcn.00484810
add esp, 4
jmp 0x43b1e1
mov esi, dword [ecx - 4]
push esi
call fcn.0044cb80
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x20], edi
mov dword [esi], eax
jne 0x439678
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test edi, edi
jne 0x439697
mov eax, dword [0x51877c]
mov ecx, dword [esp + 0x10]
inc eax
mov dword [0x51877c], eax
mov dword [ecx - 4], 0x51877c
jmp 0x438e77
jle 0x4396bc
mov eax, dword [0x518770]
mov edx, dword [esp + 0x10]
inc eax
mov dword [esp + 0x20], 0
mov dword [0x518770], eax
mov dword [edx - 4], 0x518770
jmp 0x438e77
mov ecx, dword [esp + 0x10]
sub ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x439607
mov esi, dword [ecx - 4]
push esi
call fcn.0044b090
mov edi, eax
mov eax, dword [esi]
add esp, 4
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x4396ef
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 0x4395fb
mov esi, dword [ecx - 4]
push esi
call fcn.004848d0
jmp 0x4395da
sub ecx, 4
push 0x517ac8
mov dword [esp + 0x14], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483b40
add esp, 0xc
jmp 0x439ae3
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483870
jmp 0x439ae0
mov eax, dword [0x52b25c]
test eax, eax
jne case.0x439129.19
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483720
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483a80
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483a20
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483ae0
jmp 0x439ae0
sub ecx, 4
mov eax, 0x518248
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x4397e8
cmp dword [ebp + 4], eax
jne 0x4397e8
mov eax, dword [esi + 8]
mov edx, dword [ebp + 8]
lea ecx, [edx + eax]
mov edi, ecx
xor edi, eax
jge 0x4397da
mov eax, ecx
xor eax, edx
jl 0x4397e8
push ecx
call fcn.004527d0
add esp, 4
jmp 0x439ae3
push ebp
push esi
call fcn.004837e0
jmp 0x439ae0
sub ecx, 4
mov eax, 0x518248
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x439833
cmp dword [ebp + 4], eax
jne 0x439833
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 8]
mov eax, edx
sub eax, ecx
mov edi, eax
xor edi, edx
jge 0x439825
not ecx
xor ecx, eax
jl 0x439833
push eax
call fcn.004527d0
add esp, 4
jmp 0x439ae3
push ebp
push esi
call fcn.004836c0
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], 0x518d18
jne 0x439896
cmp dword [ebp + 4], 0x518248
jne 0x439896
push ebp
call fcn.004528c0
add esp, 4
test eax, eax
jge 0x43986f
add eax, dword [esi + 8]
js 0x43987e
cmp eax, dword [esi + 8]
jge 0x43987e
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + eax*4]
inc dword [edi]
jmp 0x4398a2
mov edx, dword [0x52d254]
push str.list_index_out_of_range
push edx
call fcn.0043f0c0
add esp, 8
xor edi, edi
jmp 0x4398a2
push ebp
push esi
call fcn.00482bc0
add esp, 8
mov edi, eax
mov eax, dword [esi]
mov dword [esp + 0x14], edi
dec eax
mov dword [esi], eax
jne 0x4398b7
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 0x43b1f8
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 0x4395fb
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483600
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483660
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.004835a0
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483540
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483310
jmp 0x43989d
sub ecx, 4
push 0x517ac8
mov dword [esp + 0x14], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.004847b0
add esp, 0xc
jmp 0x4398a0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484520
jmp 0x43989d
mov eax, dword [0x52b25c]
test eax, eax
jne case.0x439129.21
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484280
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.004843b0
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484310
jmp 0x43989d
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484720
jmp 0x43989d
sub ecx, 4
mov eax, 0x518248
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x439a28
cmp dword [ebp + 4], eax
jne 0x439a28
mov eax, dword [esi + 8]
mov edx, dword [ebp + 8]
lea ecx, [edx + eax]
mov edi, ecx
xor edi, eax
jge 0x439a1a
mov eax, ecx
xor eax, edx
jl 0x439a28
push ecx
call fcn.004527d0
add esp, 4
jmp 0x439ae3
push ebp
push esi
call fcn.00484450
jmp 0x439ae0
sub ecx, 4
mov eax, 0x518248
mov dword [esp + 0x10], ecx
mov esi, dword [ecx - 4]
mov ebp, dword [ecx]
cmp dword [esi + 4], eax
jne 0x439a70
cmp dword [ebp + 4], eax
jne 0x439a70
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 8]
mov eax, edx
sub eax, ecx
mov edi, eax
xor edi, edx
jge 0x439a65
not ecx
xor ecx, eax
jl 0x439a70
push eax
call fcn.004527d0
add esp, 4
jmp 0x439ae3
push ebp
push esi
call fcn.004841f0
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.004840d0
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484160
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00484040
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483fa0
jmp 0x439ae0
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx - 4]
push ebp
push esi
call fcn.00483f00
add esp, 8
mov edi, eax
mov eax, dword [esi]
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x439afa
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 0x4395f4
mov edx, dword [ebp + 4]
push ebp
jmp 0x4395ee
lea edx, [eax - 2]
test dl, 2
je 0x439b23
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x439b25
xor ebp, ebp
test al, 1
je 0x439b34
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edi, dword [ecx]
jmp 0x439b36
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 0x439c2b
cmp dword [eax + 0x10], esi
je 0x439c2b
cmp edi, esi
je 0x439b96
mov eax, dword [edi + 4]
cmp eax, 0x518248
je 0x439b96
push 0x518248
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x439b96
mov eax, dword [edi + 4]
cmp eax, 0x5183d0
je 0x439b96
push 0x5183d0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x439c2b
cmp ebp, esi
je 0x439bd2
mov eax, dword [ebp + 4]
cmp eax, 0x518248
je 0x439bd2
push 0x518248
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x439bd2
mov eax, dword [ebp + 4]
cmp eax, 0x5183d0
je 0x439bd2
push 0x5183d0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x439c2b
lea ecx, [esp + 0x80]
mov dword [esp + 0x80], esi
push ecx
push edi
mov dword [esp + 0x94], 0x7fffffff
call fcn.0043db60
add esp, 8
test eax, eax
je 0x439c63
lea edx, [esp + 0x8c]
push edx
push ebp
call fcn.0043db60
add esp, 8
test eax, eax
je 0x439c63
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x80]
push eax
push ecx
push ebx
call fcn.00484fd0
add esp, 0xc
mov esi, eax
jmp 0x439c63
push esi
push ebp
push edi
call fcn.00488eb0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x439c61
push esi
push ebx
call fcn.00482bc0
mov ebx, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x439c59
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov esi, ebx
mov ebx, dword [esp + 0x2c]
jmp 0x439c63
xor esi, esi
mov eax, dword [ebx]
mov dword [esp + 0x14], esi
dec eax
mov dword [ebx], eax
jne 0x439c78
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x439c8d
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x439c8d
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebp, ebp
je 0x439ca4
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x439ca4
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 0x4395fd
test al, 2
je 0x439cc1
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x439cc3
xor ebp, ebp
test al, 1
je 0x439cd2
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebx, dword [ecx]
jmp 0x439cd4
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.0043dca0
mov dword [esp + 0x30], eax
mov eax, dword [esi]
add esp, 0x10
dec eax
mov dword [esi], eax
jne 0x439d07
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 0x439d18
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x439d2d
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x439d2d
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x439d44
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x439d44
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x20]
test eax, eax
jmp 0x439e15
lea edx, [eax - 2]
test dl, 2
je 0x439d62
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x439d64
xor ebp, ebp
test al, 1
je 0x439d73
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edi, dword [ecx]
jmp 0x439d75
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.0043dca0
mov ebx, eax
mov eax, dword [esi]
add esp, 0x10
dec eax
mov dword [esp + 0x20], ebx
mov dword [esi], eax
jne 0x439da2
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x439db7
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x439db7
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebp, ebp
je 0x439e13
jmp 0x439e00
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.00482d80
mov ebx, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x20], ebx
mov dword [esi], eax
jne 0x439def
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 0x439e00
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 0x439e13
mov edx, dword [ebp + 4]
push ebp
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x438e77
jmp 0x439603
mov ebp, dword [ecx - 4]
mov esi, dword [ecx - 8]
add ecx, 0xfffffff8
push ebp
push esi
mov dword [esp + 0x18], ecx
call fcn.00482f50
mov edi, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esp + 0x20], edi
mov dword [esi], eax
jne 0x439e4e
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 0x439e61
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
add esp, 4
test edi, edi
je 0x438e77
jmp 0x439603
sub ecx, 4
push str.displayhook
mov dword [esp + 0x14], ecx
mov edi, dword [ecx]
call fcn.0047adc0
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x439eae
mov edx, dword [0x52d200]
push str.lost_sys.displayhook
push edx
call fcn.0043f0c0
add esp, 8
xor esi, esi
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x14], esi
jmp 0x439f03
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x439eff
push edi
push 0x4f03cc
call fcn.0043e050
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x14], esi
jne 0x439ed8
mov dword [esp + 0x20], 0xffffffff
jmp 0x439f03
push 0
push esi
push ebp
call fcn.0043d7c0
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x439ece
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x439f03
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
jmp 0x439f03
mov esi, dword [esp + 0x14]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x439f14
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test esi, esi
je 0x439603
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x439603
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
jmp 0x439603
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 0x439f5b
cmp eax, 0x517ac8
jne 0x439f8a
push str.stdout
call fcn.0047adc0
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x439f94
mov eax, dword [0x52d200]
push str.lost_sys.stdout
push eax
call fcn.0043f0c0
add esp, 8
or ebx, 0xffffffff
mov dword [esp + 0x20], ebx
jmp 0x439f8e
mov ebx, dword [esp + 0x20]
test ebp, ebp
je 0x439fc2
jmp 0x439f98
mov ebx, dword [esp + 0x20]
mov ecx, dword [ebp]
push 0
inc ecx
push ebp
mov dword [ebp], ecx
call fcn.0047df30
add esp, 8
test eax, eax
je 0x439fc2
push ebp
push 0x4f0ab0
call fcn.0047e1d0
mov ebx, eax
add esp, 8
mov dword [esp + 0x20], ebx
test ebx, ebx
jne 0x43a042
push 1
push ebp
push esi
call fcn.0047e020
mov ebx, eax
add esp, 0xc
test ebx, ebx
mov dword [esp + 0x20], ebx
jne 0x43a042
mov eax, dword [esi + 4]
cmp eax, 0x518b78
je 0x439ff8
push 0x518b78
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43a037
mov edi, dword [esi + 8]
test edi, edi
je 0x43a037
cmp dword [0x5225dc], 1
jle 0x43a01b
xor ecx, ecx
push 8
mov cl, byte [edi + esi + 0x13]
push ecx
call fcn.004be5af
add esp, 8
jmp 0x43a02c
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 0x43a037
cmp byte [edi + esi + 0x13], 0x20
jne 0x43a042
push 1
push ebp
call fcn.0047df30
add esp, 8
test ebp, ebp
je 0x43a059
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x43a059
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 0x43a06a
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x43a083
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43a083
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
mov dword [esp + 0x48], 0
je 0x438e77
jmp 0x439603
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
test esi, esi
mov ebp, esi
je 0x43a0b5
cmp esi, 0x517ac8
jne 0x43a0e0
jmp 0x43a0b5
mov esi, dword [esp + 0x48]
push str.stdout
call fcn.0047adc0
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x43a0e4
mov edx, dword [0x52d200]
push str.lost_sys.stdout
push edx
call fcn.0043f0c0
mov ecx, dword [esp + 0x18]
add esp, 8
test ebp, ebp
je 0x43a108
push ebp
push 0x4f11dc
call fcn.0047e1d0
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
jne 0x43a104
push eax
push ebp
call fcn.0047df30
add esp, 8
mov ecx, dword [esp + 0x10]
test esi, esi
je 0x43a121
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x43a11d
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 0x439607
mov dword [esp + 0x28], 4
jmp 0x43a155
mov ecx, dword [esp + 0x18]
push ecx
call fcn.004527d0
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 0x43c829
mov eax, dword [ebx + 0x48]
test eax, eax
jle 0x43c7e5
push ebx
call fcn.004808a0
mov edi, eax
add esp, 4
mov dword [esp + 0x7c], edi
cmp dword [edi], 0x78
jne 0x43a197
cmp dword [esp + 0x28], 5
je 0x43c544
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 0x43a1df
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [ecx]
test eax, eax
je 0x43a1ce
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43a1ca
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 0x43a1ac
mov eax, dword [edi]
mov edx, dword [esp + 0x28]
cmp eax, 0x78
jne 0x43a1f3
cmp edx, 4
je 0x43c7cb
cmp eax, 0x7a
je 0x43c588
cmp eax, 0x79
jne 0x43a160
cmp dword [esp + 0x28], 1
jne 0x43a160
jmp 0x43c591
mov eax, dword [esp + 0x18]
xor ebp, ebp
xor edx, edx
xor esi, esi
cmp eax, 3
ja case.default.0x43a228
jmp dword [eax*4 + 0x43cda4]
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 0x43a2aa
call fcn.00481140
mov ecx, dword [eax + 0x34]
test ecx, ecx
jne 0x43a26d
mov ecx, 0x517ac8
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 0x43a28c
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x43a29d
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43a2aa
mov ecx, dword [eax]
inc ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x24]
cmp eax, 0x517ac8
jne 0x43a344
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jne 0x43a2cd
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 0x43a2f0
mov eax, dword [0x517ac8]
mov dword [esp + 0x28], 0x517ac8
inc eax
mov dword [0x517ac8], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
cmp eax, 0x519d88
je 0x43a310
push 0x519d88
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43a36a
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00479f30
add esp, 4
test eax, eax
jle 0x43a36a
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 0x43a2f0
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x43a2f0
test eax, eax
je 0x43a2d5
cmp dword [eax + 4], 0x51d678
je 0x43a2d5
mov edx, dword [0x52d244]
push str.raise:_arg_3_must_be_a_traceback_or_None
push edx
call fcn.0043f0c0
add esp, 8
jmp 0x43a443
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
cmp eax, 0x518b78
jne 0x43a38e
mov ecx, dword [0x52d270]
push str.raising_a_string_exception_is_deprecated
push ecx
call fcn.0043fba0
add esp, 8
jmp 0x43a3ff
cmp eax, 0x5199b0
jne 0x43a3ae
lea edx, [esp + 0x24]
lea eax, [esp + 0x28]
push edx
lea ecx, [esp + 0x20]
push eax
push ecx
call fcn.0043f290
add esp, 0xc
jmp 0x43a3ff
cmp eax, 0x519b58
jne 0x43a42b
mov eax, dword [esp + 0x28]
cmp eax, 0x517ac8
je 0x43a3d6
mov edx, dword [0x52d244]
push str.instance_exception_may_not_have_a_separate_value
push edx
call fcn.0043f0c0
add esp, 8
jmp 0x43a443
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jne 0x43a3ee
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.0043efe0
mov ecx, dword [esp + 0x30]
add esp, 0xc
xor edx, edx
test ecx, ecx
setne dl
inc edx
mov dword [esp + 0x28], edx
jmp 0x43c35b
mov eax, dword [eax + 0xc]
mov ecx, dword [0x52d244]
push eax
push str.exceptions_must_be_classes__instances__or_strings__deprecated___not__s
push ecx
call fcn.0043f8b0
add esp, 0xc
mov eax, dword [esp + 0x28]
test eax, eax
je 0x43a463
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jne 0x43a463
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x43a483
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x1c]
cmp dword [eax], 0
jne 0x43a483
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43a4a3
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jne 0x43a4a3
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x28], 1
jmp 0x43c35b
mov eax, dword [0x52d204]
push str.bad_RAISE_VARARGS_oparg
push eax
call fcn.0043f0c0
add esp, 8
mov dword [esp + 0x28], 1
jmp 0x43c35b
mov ecx, dword [esp + 0x9c]
mov eax, dword [ecx + 0x1c]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x43a4fb
mov edx, dword [0x52d204]
push str.no_locals
push edx
call fcn.0043f0c0
add esp, 8
jmp 0x439603
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 0x439607
sub ecx, 4
mov dword [esp + 0x28], 3
mov dword [esp + 0x10], ecx
mov edx, dword [ecx]
mov dword [esp + 0x3c], edx
jmp 0x43a155
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 0x43a155
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, 0x519d88
mov dword [esp + 0x24], ebp
mov dword [esp + 0x30], 0
je 0x43a594
push 0x519d88
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43a5f7
cmp ebx, 0x517ac8
jne 0x43a660
cmp ebp, 0x517ac8
jne 0x43a5f7
mov eax, dword [esp + 0x2c]
push eax
call fcn.00479f30
mov edi, eax
add esp, 4
cmp edi, 2
je 0x43a5c1
cmp edi, 3
jne 0x43a5f7
mov esi, dword [esp + 0x2c]
push 1
push esi
call fcn.00479f70
add esp, 8
cmp edi, 3
mov ebx, eax
jne 0x43a5e6
push 2
push esi
call fcn.00479f70
add esp, 8
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x2c]
push 0
push ecx
call fcn.00479f70
add esp, 8
mov esi, eax
cmp ebx, 0x517ac8
jne 0x43a660
call fcn.00481140
push eax
call dword [0x52c1c0]
add esp, 4
test eax, eax
jne 0x43a616
xor ebx, ebx
jmp 0x43a619
mov ebx, dword [eax + 0x18]
cmp dword [esp + 0x24], 0x517ac8
jne 0x43a66e
call fcn.00481140
push eax
call dword [0x52c1c0]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43a646
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], 1
jmp 0x43a66e
push edi
call fcn.004808d0
mov edx, dword [edi + 0x1c]
add esp, 4
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], 1
jmp 0x43a66e
cmp dword [esp + 0x24], 0x517ac8
jne 0x43a66e
mov dword [esp + 0x24], ebx
mov eax, dword [esi + 4]
cmp eax, 0x518b78
je 0x43a6b7
push 0x518b78
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43a6b7
mov eax, dword [esi + 4]
cmp eax, 0x516798
je 0x43a6b7
cmp eax, 0x51a1d0
je 0x43a6b7
push 0x51a1d0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43a6b7
push str.exec:_arg_1_must_be_a_string__file__or_code_object
jmp 0x43a753
mov eax, dword [ebx + 4]
cmp eax, 0x5194c0
je 0x43a6e1
push 0x5194c0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43a6e1
mov ecx, dword [0x52d244]
push str.exec:_arg_2_must_be_a_dictionary_or_None
push ecx
jmp 0x43a759
mov edi, dword [esp + 0x24]
mov eax, dword [edi + 4]
cmp eax, 0x5194c0
je 0x43a70f
push 0x5194c0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43a70f
mov edx, dword [0x52d244]
push str.exec:_arg_3_must_be_a_dictionary_or_None
push edx
jmp 0x43a759
push str.__builtins__
push ebx
call fcn.00470e80
add esp, 8
test eax, eax
jne 0x43a73a
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x14]
push ecx
push str.__builtins__
push ebx
call fcn.00470f10
add esp, 0xc
mov eax, dword [esi + 4]
cmp eax, 0x516798
jne 0x43a78c
mov edx, dword [esi + 0x28]
mov eax, dword [edx + 8]
test eax, eax
jle 0x43a76e
push str.code_object_passed_to_exec_may_not_contain_free_variables
mov eax, dword [0x52d244]
push eax
call fcn.0043f0c0
add esp, 8
mov dword [esp + 0x20], 0xffffffff
jmp 0x43a915
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push edi
push ebx
push esi
call fcn.0043cdc0
add esp, 0x28
jmp 0x43a8d2
cmp eax, 0x51a1d0
je 0x43a84a
push 0x51a1d0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43a84a
lea ecx, [esp + 0x84]
push eax
push ecx
push esi
mov dword [esp + 0x80], eax
call fcn.0045d6c0
add esp, 0xc
test eax, eax
je 0x43a7d7
mov dword [esp + 0x20], 0xffffffff
jmp 0x43a915
call fcn.00481140
push eax
call dword [0x52c1c0]
mov esi, dword [esp + 0x78]
add esp, 4
xor ecx, ecx
test esi, esi
setne cl
test eax, eax
je 0x43a80c
mov edx, dword [eax + 0x10]
mov eax, dword [edx + 0x14]
and eax, 0x2000
je 0x43a80c
mov ecx, esi
or ecx, eax
mov dword [esp + 0x74], ecx
jmp 0x43a810
test ecx, ecx
je 0x43a82e
mov ecx, dword [esp + 0x84]
lea eax, [esp + 0x74]
push eax
push edi
push ebx
push 0x101
push ecx
call fcn.00429720
jmp 0x43a8cf
mov edx, dword [esp + 0x84]
push edi
push ebx
push 0x101
push edx
call fcn.00429540
add esp, 0x10
jmp 0x43a8d2
push esi
call fcn.0047bca0
push esi
mov edi, eax
call fcn.0047bcd0
push eax
call fcn.0045d650
mov esi, eax
mov dword [esp + 0x78], 0
call fcn.00481140
push eax
call dword [0x52c1c0]
mov edx, dword [esp + 0x7c]
add esp, 0x10
xor ecx, ecx
test edx, edx
setne cl
test eax, eax
je 0x43a89d
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
and eax, 0x2000
je 0x43a89d
mov ecx, edx
or ecx, eax
mov dword [esp + 0x6c], ecx
jmp 0x43a8a1
test ecx, ecx
je 0x43a8bd
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x6c]
push ecx
push edx
push ebx
push 0x101
push esi
push edi
call fcn.004297d0
add esp, 0x18
jmp 0x43a8d2
mov eax, dword [esp + 0x24]
push eax
push ebx
push 0x101
push esi
push edi
call fcn.004295d0
add esp, 0x14
mov esi, eax
mov eax, dword [esp + 0x30]
test eax, eax
je 0x43a8ee
mov ecx, dword [esp + 0x9c]
push 0
push ecx
call fcn.00480b00
add esp, 8
test esi, esi
jne 0x43a8fc
mov dword [esp + 0x20], 0xffffffff
jmp 0x43a915
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x43a90d
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 0x43a92a
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 0x43a93f
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 0x439603
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
jmp 0x439603
mov edi, dword [esp + 0x9c]
push edi
call fcn.004808a0
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 0x439607
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx]
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x43a9a0
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 0x43a986
jmp 0x439607
sub ecx, 4
mov dword [esp + 0x10], ecx
mov esi, dword [ecx]
mov eax, dword [esi + 4]
cmp eax, 0x518248
je 0x43aa5e
push 0x518248
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43aa5a
mov eax, dword [esi + 4]
cmp eax, 0x518b78
je 0x43aa2c
push 0x518b78
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43aa2c
cmp dword [esi + 4], 0x5199b0
je 0x43aa2c
cmp esi, 0x517ac8
je 0x43b846
mov eax, dword [0x52d204]
push str.finally_pops_bad_exception
push eax
call fcn.0043f0c0
add esp, 8
jmp 0x43b83e
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.0043efe0
add esp, 0xc
mov dword [esp + 0x28], 2
jmp 0x43c35b
mov ecx, dword [esp + 0x10]
mov eax, dword [esi + 8]
cmp eax, 3
mov dword [esp + 0x28], eax
je 0x43aa78
cmp eax, 6
je 0x43aa78
cmp eax, 5
jne 0x43b846
sub ecx, 4
mov dword [esp + 0x10], ecx
mov edx, dword [ecx]
mov dword [esp + 0x3c], edx
jmp 0x43b846
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, 0x5194c0
mov dword [esp + 0x1c], ebx
je 0x43aaba
push 0x5194c0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43aad2
push str.__metaclass__
push edi
call fcn.00470e80
mov esi, eax
add esp, 8
test esi, esi
je 0x43aad2
inc dword [esi]
jmp 0x43ab22
mov eax, dword [ebx + 4]
cmp eax, 0x519d88
je 0x43aaf2
push 0x519d88
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43ab93
mov eax, dword [ebx + 8]
test eax, eax
jle 0x43ab93
mov ebx, dword [ebx + 0xc]
push str.__class__
push ebx
call fcn.0044c2a0
mov esi, eax
add esp, 8
test esi, esi
jne 0x43ab1e
call fcn.0043f470
mov esi, dword [ebx + 4]
inc dword [esi]
mov ebx, dword [esp + 0x1c]
push edi
push ebx
push ebp
push 0x4f2634
push esi
call fcn.00485b10
mov ebx, eax
mov eax, dword [esi]
add esp, 0x14
dec eax
mov dword [esi], eax
jne 0x43ab46
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 0x43ab62
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 0x43ab77
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 0x439603
mov edx, dword [ebp + 4]
push ebp
call dword [edx + 0x18]
add esp, 4
jmp 0x439603
call fcn.00481140
push eax
call dword [0x52c1c0]
add esp, 4
test eax, eax
je 0x43abdd
mov esi, dword [eax + 0x18]
test esi, esi
je 0x43abdd
mov eax, dword [esi + 4]
cmp eax, 0x5194c0
je 0x43abc9
push 0x5194c0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43abdd
push str.__metaclass__
push esi
call fcn.00470e80
mov esi, eax
add esp, 8
test esi, esi
jne 0x43abe2
mov esi, 0x5199b0
inc dword [esi]
jmp 0x43ab22
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 0x43ac33
push ebp
call fcn.0044b090
mov ecx, dword [0x52d204]
add eax, 0x14
push eax
push str.no_locals_found_when_storing__s
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp 0x439603
push esi
push ebp
push eax
call fcn.0046eea0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x439f1c
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 0x43ac87
call fcn.0044b090
add eax, 0x14
push eax
mov eax, dword [0x52d204]
push str.no_locals_when_deleting__s
push eax
call fcn.0043f8b0
add esp, 0x10
jmp 0x439603
push eax
call fcn.0046f130
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x439603
mov esi, dword [0x52d21c]
test ebp, ebp
je 0x439603
push ebp
call fcn.0045d650
add esp, 4
test eax, eax
je 0x439603
push eax
push str.name__.200s_is_not_defined
push esi
call fcn.0043f8b0
add esp, 0xc
jmp 0x439603
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.0044c610
mov dword [esp + 0x2c], eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esi], eax
jne 0x43ad08
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 0x439603
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
jmp 0x439603
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.0044c610
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x43b846
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.0046eea0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x43b846
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.0046f130
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x439603
mov esi, dword [0x52d21c]
test ebp, ebp
je 0x439603
push ebp
call fcn.0045d650
add esp, 4
test eax, eax
je 0x439603
push eax
push str.global_name__.200s_is_not_defined
push esi
call fcn.0043f8b0
add esp, 0xc
jmp 0x439603
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 0x43ae1f
call fcn.0044b090
mov ecx, dword [0x52d204]
add eax, 0x14
push eax
push str.no_locals_when_loading__s
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp 0x439603
push eax
call fcn.0046ee30
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43a4fb
mov edx, dword [esi + 0x18]
push ebp
push edx
call fcn.0046ee30
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43a4fb
mov eax, dword [esi + 0x14]
push ebp
push eax
call fcn.0046ee30
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43a4fb
mov esi, dword [0x52d21c]
test ebp, ebp
je 0x439603
push ebp
call fcn.0045d650
add esp, 4
test eax, eax
je 0x439603
push eax
push str.name__.200s_is_not_defined
push esi
call fcn.0043f8b0
add esp, 0xc
jmp 0x439603
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov ebp, dword [edx + eax*4 + 0xc]
cmp dword [ebp + 4], 0x518b78
jne 0x43af0d
mov esi, dword [ebp + 0xc]
cmp esi, 0xffffffff
je 0x43af0d
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 0x43aeef
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 0x438e7b
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 0x43af42
inc dword [eax]
jmp 0x43b18b
mov esi, dword [esp + 0x9c]
push ebp
mov eax, dword [esi + 0x18]
push eax
call fcn.0046ee30
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43afad
mov ecx, dword [esi + 0x14]
push ebp
push ecx
call fcn.0046ee30
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43afad
mov esi, dword [0x52d21c]
jmp 0x43adb9
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 0x43af74
mov eax, dword [esp + 0x70]
push ecx
mov ecx, dword [eax + 0x24]
jmp 0x43b01c
test eax, eax
mov dword [edx + ecx*4 + 0x14c], 0
je 0x438e77
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x438e77
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
jmp 0x438e74
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 0x439607
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.0048ad70
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x43b09e
mov dword [esp + 0x20], 0xffffffff
call fcn.0043f110
test eax, eax
jne 0x439603
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x18]
mov eax, dword [edx + 0x140]
cmp ecx, eax
jge 0x43b058
mov eax, dword [esp + 0x70]
push ecx
mov ecx, dword [eax + 0x2c]
push ecx
call fcn.00479f70
mov esi, dword [0x52d268]
add esp, 8
test eax, eax
je 0x439603
push eax
call fcn.0045d650
add esp, 4
test eax, eax
je 0x439603
push eax
push str.local_variable__.200s_referenced_before_assignment
push esi
call fcn.0043f8b0
add esp, 0xc
jmp 0x439603
mov edx, dword [esp + 0x70]
sub ecx, eax
push ecx
mov eax, dword [edx + 0x28]
push eax
call fcn.00479f70
mov esi, dword [0x52d21c]
add esp, 8
test eax, eax
je 0x439603
push eax
call fcn.0045d650
add esp, 4
test eax, eax
je 0x439603
push eax
push str.free_variable__.200s_referenced_before_assignment_in_enclosing_scope
push esi
call fcn.0043f8b0
add esp, 0xc
jmp 0x439603
mov ecx, dword [esp + 0x10]
mov dword [ecx], ebp
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x439607
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.0048ada0
mov eax, dword [ebp]
add esp, 8
dec eax
mov dword [ebp], eax
jne 0x438e77
mov ecx, dword [ebp + 4]
push ebp
call dword [ecx + 0x18]
jmp 0x438e74
mov edx, dword [esp + 0x18]
push edx
call fcn.00479e10
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x439603
mov edx, dword [esp + 0x18]
dec edx
mov dword [esp + 0x18], edx
js 0x43b136
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 0x43b120
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x438e7b
mov edx, dword [esp + 0x18]
push edx
call fcn.00462440
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x439603
mov edx, dword [esp + 0x18]
dec edx
mov dword [esp + 0x18], edx
js 0x43b18b
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 0x43b170
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 0x438e7b
call fcn.0046ea40
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 0x438e7b
jmp 0x439607
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.0044c4d0
add esp, 8
mov edi, eax
mov eax, dword [esi]
dec eax
mov dword [esp + 0x14], edi
mov dword [esi], eax
jne 0x43b1f8
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 0x4395fb
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.00470e80
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x14], ebx
jne 0x43b24a
mov eax, dword [0x52d248]
push str.__import___not_found
push eax
call fcn.0043f0c0
add esp, 8
jmp 0x439603
mov ecx, dword [esp + 0x10]
mov eax, dword [edi + 0x1c]
test eax, eax
mov esi, dword [ecx - 4]
jne 0x43b25d
mov eax, 0x517ac8
mov edx, dword [edi + 0x18]
push esi
push eax
push edx
push ebp
push str._OOOO_
call fcn.0043e050
mov ebp, eax
mov eax, dword [esi]
add esp, 0x14
dec eax
mov dword [esi], eax
jne 0x43b284
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
jne 0x43b29c
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], ebp
sub ecx, 4
mov dword [esp + 0x10], ecx
jmp 0x439607
push 0
push ebp
push ebx
call fcn.0043d7c0
mov esi, eax
mov eax, dword [ebp]
add esp, 0xc
dec eax
mov dword [esp + 0x14], esi
mov dword [ebp], eax
jne 0x43b2c1
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 0x4395fd
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.004808d0
mov eax, dword [esi + 0x1c]
add esp, 4
test eax, eax
mov dword [esp + 0x14], eax
jne 0x43b30f
mov eax, dword [0x52d204]
push str.no_locals_found_during_import_
push eax
call fcn.0043f0c0
add esp, 8
jmp 0x439603
push str.__all__
push ebx
call fcn.0044c2a0
mov edi, eax
add esp, 8
test edi, edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], 0
jne 0x43b3d8
mov ecx, dword [0x52d210]
push ecx
call fcn.0043f1d0
add esp, 4
test eax, eax
jne 0x43b34e
or esi, 0xffffffff
jmp 0x43b4d8
call fcn.0043f470
push str.__dict__
push ebx
call fcn.0044c2a0
mov esi, eax
add esp, 8
test esi, esi
jne 0x43b39d
mov edx, dword [0x52d210]
push edx
call fcn.0043f1d0
add esp, 4
test eax, eax
jne 0x43b382
or esi, 0xffffffff
jmp 0x43b4d8
mov eax, dword [0x52d248]
push str.from_import__object_has_no___dict___and_no___all__
push eax
call fcn.0043f0c0
add esp, 8
or esi, 0xffffffff
jmp 0x43b4d8
push 0
push str.keys
push esi
call fcn.00485c20
mov edi, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x2c], edi
mov dword [esi], eax
jne 0x43b3c4
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
test edi, edi
jne 0x43b3d0
or esi, 0xffffffff
jmp 0x43b4d8
mov dword [esp + 0x30], 1
xor ebx, ebx
push ebx
push edi
mov dword [esp + 0x2c], ebx
call fcn.00484f50
mov esi, eax
add esp, 8
test esi, esi
je 0x43b4a4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x43b42f
mov eax, dword [esi + 4]
cmp eax, 0x518b78
je 0x43b416
push 0x518b78
push eax
call fcn.004412d0
add esp, 8
test eax, eax
je 0x43b42f
cmp byte [esi + 0x14], 0x5f
jne 0x43b42f
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x43b487
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
jmp 0x43b487
mov eax, dword [esp + 0x1c]
push esi
push eax
call fcn.0044c4d0
mov edi, eax
add esp, 8
test edi, edi
jne 0x43b448
or ebx, 0xffffffff
jmp 0x43b459
mov ecx, dword [esp + 0x14]
push edi
push esi
push ecx
call fcn.0046eea0
add esp, 0xc
mov ebx, eax
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x43b46a
mov edx, dword [esi + 4]
push esi
call dword [edx + 0x18]
add esp, 4
test edi, edi
je 0x43b47f
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x43b47f
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
mov edi, dword [esp + 0x2c]
test ebx, ebx
jne 0x43b4c1
mov eax, dword [esp + 0x24]
inc eax
push eax
push edi
mov dword [esp + 0x2c], eax
call fcn.00484f50
mov esi, eax
add esp, 8
test esi, esi
jne 0x43b3f2
mov ecx, dword [0x52d254]
push ecx
call fcn.0043f1d0
add esp, 4
test eax, eax
jne 0x43b4bc
or ebx, 0xffffffff
jmp 0x43b4c1
call fcn.0043f470
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x43b4d2
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.00480b00
mov eax, dword [ebx]
add esp, 8
dec eax
mov dword [ebx], eax
jne 0x43b4ff
mov ecx, dword [ebx + 4]
push ebx
call dword [ecx + 0x18]
add esp, 4
test esi, esi
je 0x438e77
jmp 0x439603
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.0044c4d0
mov esi, eax
add esp, 8
test esi, esi
jne 0x43b559
mov ecx, dword [0x52d210]
push ecx
call fcn.0043f1d0
add esp, 4
test eax, eax
je 0x43b559
push ebp
call fcn.0045d650
mov edx, dword [0x52d248]
push eax
push str.cannot_import_name__.230s
push edx
call fcn.0043f8b0
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 0x438e7b
jmp 0x439607
push ebp
call fcn.0044cb80
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jle 0x43b599
mov dword [esp + 0x20], 0
jmp 0x438e77
jne 0x439603
add edi, dword [esp + 0x18]
mov dword [esp + 0x34], edi
jmp 0x438e77
push ebp
call fcn.0044cb80
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jle 0x43b5d4
mov eax, dword [esp + 0x18]
mov dword [esp + 0x20], 0
add edi, eax
mov dword [esp + 0x34], edi
jmp 0x438e77
jne 0x439603
jmp 0x438e77
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x18]
add edx, eax
mov dword [esp + 0x34], edx
jmp 0x438e7b
cmp byte [edi], 0x5c
jne 0x438e7b
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, 0x519d88
jne 0x43b694
push esi
call fcn.00479f30
mov edx, dword [esp + 0x1c]
add esp, 4
cmp eax, edx
je 0x43b659
mov eax, dword [0x52d26c]
push str.unpack_tuple_of_wrong_size
push eax
call fcn.0043f0c0
add esp, 8
jmp 0x43b83e
dec edx
mov dword [esp + 0x18], edx
js 0x43b846
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 0x43b671
jmp 0x43b846
cmp eax, 0x518d18
jne 0x43b700
push esi
call fcn.00462520
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp eax, ecx
je 0x43b6c4
mov eax, dword [0x52d26c]
push str.unpack_list_of_wrong_size
push eax
call fcn.0043f0c0
add esp, 8
jmp 0x43b83e
mov eax, dword [esp + 0x18]
dec eax
mov dword [esp + 0x18], eax
js 0x43b846
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 0x43b6d3
jmp 0x43b846
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.00486340
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x43b813
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x43b74d
push ebx
call fcn.004863d0
add esp, 4
test eax, eax
je 0x43b78b
sub esi, 4
inc edi
mov dword [esi], eax
mov eax, dword [esp + 0x18]
cmp edi, eax
jl 0x43b732
push ebx
call fcn.004863d0
add esp, 4
test eax, eax
jne 0x43b7bb
call fcn.0043f110
test eax, eax
jne 0x43b7e0
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43b774
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 0x43b846
call fcn.0043f110
test eax, eax
jne 0x43b7e0
cmp edi, 1
mov eax, 0x4ef234
je 0x43b7a3
mov eax, 0x4f242c
mov edx, dword [0x52d26c]
push eax
push edi
push str.need_more_than__d_value_s_to_unpack
push edx
call fcn.0043f8b0
add esp, 0x10
jmp 0x43b7e0
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43b7cc
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov edx, dword [0x52d26c]
push str.too_many_values_to_unpack
push edx
call fcn.0043f0c0
add esp, 8
test edi, edi
jle 0x43b802
mov eax, dword [esi]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esi]
cmp dword [eax], 0
jne 0x43b7fc
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
add esi, 4
dec edi
jne 0x43b7e4
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43b813
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov ecx, dword [0x52d244]
push ecx
call fcn.0043f1d0
add esp, 4
test eax, eax
je 0x43b83a
mov edx, dword [0x52d244]
push str.unpack_non_sequence
push edx
call fcn.0043f0c0
add esp, 8
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x28], 1
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x439603
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
jmp 0x439603
call fcn.0043f110
test eax, eax
jne 0x439603
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 0x43b88f
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 0x438e77
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.00480860
add esp, 0x10
jmp 0x438e77
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], 0x51d468
jne 0x43ba19
mov edx, dword [esp + 0x2c]
test edx, edx
jne 0x43ba19
mov eax, dword [esi + 8]
mov ebx, dword [eax + 8]
test bl, 0xc
je 0x43b9b9
mov esi, dword [esi + 0xc]
mov edx, dword [eax + 4]
mov dword [esp + 0x30], esi
mov esi, ebx
and esi, 4
je 0x43b945
test edi, edi
jne 0x43b945
mov eax, dword [esp + 0x30]
push edi
push eax
call edx
add esp, 8
mov edi, eax
jmp 0x43bc22
test bl, 8
je 0x43b979
cmp edi, 1
jne 0x43b979
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 0x43bc22
mov edx, dword [ebx + 4]
push ebx
jmp 0x43bc1c
test esi, esi
push edi
je 0x43b99c
mov eax, dword [eax]
mov ecx, dword [0x52d244]
push eax
push str._.200s___takes_no_arguments___d_given_
push ecx
call fcn.0043f8b0
add esp, 0x10
xor edi, edi
jmp 0x43bc22
mov edx, dword [eax]
mov eax, dword [0x52d244]
push edx
push str._.200s___takes_exactly_one_argument___d_given_
push eax
call fcn.0043f8b0
add esp, 0x10
xor edi, edi
jmp 0x43bc22
push edi
call fcn.00479e10
add esp, 4
test eax, eax
jne 0x43b9ca
xor ebx, ebx
jmp 0x43b9ec
dec edi
test edi, edi
jl 0x43b9ea
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 0x43b9d4
mov ebx, eax
push 0
push ebx
push esi
call fcn.00481510
add esp, 0xc
mov edi, eax
test ebx, ebx
je 0x43bc22
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43bc22
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
jmp 0x43bc1f
cmp dword [esi + 4], 0x519c68
jne 0x43ba5d
mov ecx, dword [esi + 0xc]
test ecx, ecx
mov dword [esp + 0x30], ecx
je 0x43ba5d
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 0x43ba57
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 0x43ba5f
inc dword [esi]
cmp dword [esi + 4], 0x519760
jne 0x43bb71
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 0x43bb2a
mov eax, dword [esp + 0x24]
cmp dword [eax + 8], ebx
jne 0x43bb30
cmp dword [esp + 0x2c], edx
jne 0x43bb30
cmp dword [eax + 0x14], 0x43
jne 0x43bb30
mov ecx, dword [0x52c1bc]
push edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x30], ecx
push edx
push eax
push ecx
call fcn.004805e0
mov edi, eax
add esp, 0x10
test edi, edi
je 0x43bc11
lea eax, [ebx*4]
mov ecx, eax
mov eax, dword [esp + 0x10]
sub eax, ecx
xor ecx, ecx
test ebx, ebx
jle 0x43baf9
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 0x43bae3
push edi
call fcn.00438c70
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 0x43bb22
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
dec dword [ebx + 0xc]
jmp 0x43bc0d
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.0043cdc0
add esp, 0x28
mov edi, eax
jmp 0x43bc11
mov ecx, dword [esp + 0x2c]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], eax
jle 0x43bb9f
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x10]
push esi
push ecx
push edx
push eax
call fcn.0043d950
add esp, 0x10
mov dword [esp + 0x24], eax
test eax, eax
je 0x43bc0d
push edi
call fcn.00479e10
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x43bbf4
dec edi
test edi, edi
jl 0x43bbd0
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 0x43bbba
mov edx, dword [esp + 0x24]
push edx
push ebx
push esi
call fcn.00485aa0
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 0xc
dec eax
mov dword [ebx], eax
jne 0x43bbf4
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43bc0d
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43bc0d
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 0x43bc22
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 0x43bc50
sub eax, 4
mov dword [esp + 0x10], eax
mov eax, dword [eax]
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43bc48
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, esi
ja 0x43bc2e
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 0x438e7b
jmp 0x439607
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 0x43bc97
inc edx
and eax, 2
mov dword [esp + 0x90], eax
je 0x43bca4
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], 0x519c68
jne 0x43bcfd
mov esi, dword [eax + 0xc]
test esi, esi
je 0x43bcfd
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 0x43bcf8
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 0x43bd08
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 0x43be43
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 0x43bd64
mov eax, dword [eax + 4]
cmp eax, 0x5194c0
je 0x43be45
push 0x5194c0
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43be43
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 4]
cmp eax, 0x519c68
jne 0x43bd75
mov esi, 0x4ef428
jmp 0x43bdb0
cmp eax, 0x519760
jne 0x43bd83
mov esi, 0x4ef428
jmp 0x43bdb0
cmp eax, 0x51d468
jne 0x43bd91
mov esi, 0x4ef428
jmp 0x43bdb0
cmp eax, 0x5199b0
jne 0x43bd9f
mov esi, str._constructor
jmp 0x43bdb0
cmp eax, 0x519b58
mov esi, str._instance
je 0x43bdb0
mov esi, str._object
cmp eax, 0x519c68
jne 0x43bdc9
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 8]
push ecx
call fcn.0043d890
add esp, 4
jmp 0x43be28
cmp eax, 0x519760
jne 0x43bde2
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0x1c]
push eax
call fcn.0045d650
add esp, 4
jmp 0x43be28
cmp eax, 0x51d468
jne 0x43bdf0
mov ecx, dword [ecx + 8]
mov eax, dword [ecx]
jmp 0x43be28
cmp eax, 0x5199b0
jne 0x43be09
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0x10]
push eax
call fcn.0045d650
add esp, 4
jmp 0x43be28
cmp eax, 0x519b58
jne 0x43be25
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0x10]
push eax
call fcn.0045d650
add esp, 4
jmp 0x43be28
mov eax, dword [eax + 0xc]
mov ecx, dword [0x52d244]
push esi
push eax
push str._s_s_argument_after__must_be_a_dictionary
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp 0x43c045
xor edx, edx
cmp dword [esp + 0x7c], edx
je 0x43bf9a
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, 0x519d88
je 0x43bf97
push 0x519d88
push eax
call fcn.004412d0
add esp, 8
test eax, eax
jne 0x43bf97
push esi
call fcn.004853b0
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x43bf80
mov edx, dword [0x52d244]
push edx
call fcn.0043f1d0
add esp, 4
test eax, eax
je 0x43c045
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 4]
cmp eax, 0x519c68
jne 0x43bec3
mov esi, 0x4ef428
jmp 0x43befe
cmp eax, 0x519760
jne 0x43bed1
mov esi, 0x4ef428
jmp 0x43befe
cmp eax, 0x51d468
jne 0x43bedf
mov esi, 0x4ef428
jmp 0x43befe
cmp eax, 0x5199b0
jne 0x43beed
mov esi, str._constructor
jmp 0x43befe
cmp eax, 0x519b58
mov esi, str._instance
je 0x43befe
mov esi, str._object
cmp eax, 0x519c68
jne 0x43bf13
mov eax, dword [ecx + 8]
push eax
call fcn.0043d890
add esp, 4
jmp 0x43bf66
cmp eax, 0x519760
jne 0x43bf28
mov ecx, dword [ecx + 0x1c]
push ecx
call fcn.0045d650
add esp, 4
jmp 0x43bf66
cmp eax, 0x51d468
jne 0x43bf36
mov edx, dword [ecx + 8]
mov eax, dword [edx]
jmp 0x43bf66
cmp eax, 0x5199b0
jne 0x43bf4b
mov eax, dword [ecx + 0x10]
push eax
call fcn.0045d650
add esp, 4
jmp 0x43bf66
cmp eax, 0x519b58
jne 0x43bf63
mov ecx, dword [ecx + 8]
mov edx, dword [ecx + 0x10]
push edx
call fcn.0045d650
add esp, 4
jmp 0x43bf66
mov eax, dword [eax + 0xc]
push esi
push eax
mov eax, dword [0x52d244]
push str._s_s_argument_after__must_be_a_sequence
push eax
call fcn.0043f8b0
add esp, 0x10
jmp 0x43c045
mov eax, dword [esi]
dec eax
mov dword [esi], eax
jne 0x43bf91
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 0x43bfca
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.0043d950
add esp, 0x10
mov dword [esp + 0x2c], eax
test eax, eax
je 0x43c05e
lea eax, [ebx + edi]
push eax
call fcn.00479e10
mov esi, eax
add esp, 4
test esi, esi
je 0x43c045
test ebx, ebx
jle 0x43bffb
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 0x43bfeb
dec edi
test edi, edi
jl 0x43c01d
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 0x43c007
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
push edx
push esi
push eax
call fcn.00485aa0
mov dword [esp + 0x20], eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esi], eax
jne 0x43c045
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x43c05e
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43c05e
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43c077
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43c077
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 0x43c094
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 0x43b561
sub eax, 4
mov dword [esp + 0x10], eax
mov ebp, dword [eax]
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x43c0c0
mov eax, dword [ebp + 4]
push ebp
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, edi
ja 0x43c0a4
jmp 0x43b561
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.004710b0
mov ebx, eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x43c101
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
test ebx, ebx
je 0x43c169
mov edi, dword [esp + 0x18]
test edi, edi
jle 0x43c169
push edi
call fcn.00479e10
mov esi, eax
add esp, 4
test esi, esi
je 0x43c242
dec edi
mov dword [esp + 0x18], edi
js 0x43c14a
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 0x43c134
push esi
push ebx
call fcn.004711b0
mov dword [esp + 0x28], eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x43c169
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 0x439607
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.004710b0
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 0x43c1b9
mov ecx, dword [esi + 4]
push esi
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
je 0x43c169
test edi, edi
jle 0x43c227
push edi
call fcn.00479e10
mov esi, eax
add esp, 4
test esi, esi
jne 0x43c1ea
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43c253
mov edx, dword [ebx + 4]
push ebx
call dword [edx + 0x18]
add esp, 4
mov dword [esp + 0x14], esi
jmp 0x439603
dec edi
js 0x43c208
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 0x43c1f2
push esi
push ebx
call fcn.00471250
mov dword [esp + 0x28], eax
mov eax, dword [esi]
add esp, 8
dec eax
mov dword [esi], eax
jne 0x43c227
mov eax, dword [esi + 4]
push esi
call dword [eax + 0x18]
add esp, 4
mov edi, dword [esp + 0x18]
test edi, edi
jle 0x43c169
push edi
call fcn.00479e10
mov esi, eax
add esp, 4
test esi, esi
jne 0x43c260
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43c253
mov ecx, dword [ebx + 4]
push ebx
call dword [ecx + 0x18]
add esp, 4
mov dword [esp + 0x14], 0
jmp 0x439603
dec edi
mov dword [esp + 0x18], edi
js 0x43c14a
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 0x43c278
jmp 0x43c14a
cmp dword [esp + 0x18], 3
jne 0x43c2a5
sub ecx, 4
mov dword [esp + 0x10], ecx
mov ebp, dword [ecx]
jmp 0x43c2a7
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.00488eb0
mov ebx, eax
mov eax, dword [esi]
add esp, 0xc
dec eax
mov dword [esp + 0x14], ebx
mov dword [esi], eax
jne 0x43c2d5
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 0x43c2e6
mov edx, dword [edi + 4]
push edi
call dword [edx + 0x18]
add esp, 4
test ebp, ebp
je 0x43c2fd
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x43c2fd
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 0x4395fd
push eax
mov eax, dword [esp + 0xa0]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x10]
push edx
push eax
call fcn.00435f60
add esp, 8
push eax
push str.XXX_lineno:__d__opcode:__d_n
push 0x522188
call fcn.004bd9a2
mov ecx, dword [0x52d204]
push str.unknown_opcode
push ecx
call fcn.0043f0c0
add esp, 0x18
mov dword [esp + 0x28], 1
jmp 0x43c35b
cmp eax, 1
je 0x43c35b
cmp eax, 2
jne 0x43c38a
call fcn.0043f110
test eax, eax
jne 0x43c382
mov edx, dword [0x52d204]
push str.error_return_without_exception_set
push edx
call fcn.0043f0c0
add esp, 8
mov dword [esp + 0x28], 1
jmp 0x43c393
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
cmp eax, 1
jne 0x43c525
mov eax, dword [esp + 0x9c]
push eax
call fcn.00482680
mov esi, dword [esp + 0x3c]
add esp, 4
mov ebx, dword [esi + 0x1c]
test ebx, ebx
je 0x43a151
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.0043f440
mov eax, dword [esp + 0x64]
add esp, 0xc
test eax, eax
jne 0x43c3ee
mov ecx, dword [0x517ac8]
mov eax, 0x517ac8
inc ecx
mov dword [esp + 0x58], eax
mov dword [0x517ac8], ecx
mov edx, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [esp + 0x68]
push eax
push str._OOO_
call fcn.0043e050
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x43c42c
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x60]
push ecx
push edx
push eax
call fcn.0043efe0
mov ecx, dword [esp + 0x1c]
add esp, 0xc
jmp 0x43a159
mov ecx, dword [esp + 0x9c]
mov esi, dword [ecx + 0x38]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x43c441
xor esi, esi
jmp 0x43c487
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 0x43c476
mov ecx, dword [esi + 0x18]
test ecx, ecx
jne 0x43c476
xor ecx, ecx
jmp 0x43c47b
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 0x43c498
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test esi, esi
jne 0x43c4b8
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
push edx
push eax
push ecx
call fcn.0043efe0
add esp, 0xc
jmp 0x43a151
mov eax, dword [esp + 0x60]
test eax, eax
je 0x43c4d8
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x60]
cmp dword [eax], 0
jne 0x43c4d8
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x58]
test eax, eax
je 0x43c4f8
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x58]
cmp dword [eax], 0
jne 0x43c4f8
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x43a151
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x5c]
cmp dword [eax], 0
jne 0x43a151
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
jmp 0x43a151
cmp eax, 2
jne 0x43c537
mov dword [esp + 0x28], 1
jmp 0x43a155
test eax, eax
je 0x438e7b
jmp 0x43a155
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push eax
push ecx
push edx
push ebx
call fcn.00480860
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 0x438e77
mov eax, dword [ecx + 4]
push ecx
call dword [eax + 0x18]
jmp 0x438e74
cmp edx, 1
jne 0x43c792
lea ecx, [esp + 0x50]
lea edx, [esp + 0x68]
push ecx
lea eax, [esp + 0x58]
push edx
push eax
call fcn.0043f440
mov eax, dword [esp + 0x74]
add esp, 0xc
test eax, eax
jne 0x43c5c3
mov eax, dword [0x517ac8]
mov dword [esp + 0x68], 0x517ac8
inc eax
mov dword [0x517ac8], eax
cmp dword [edi], 0x79
jne 0x43c743
lea ecx, [esp + 0x50]
lea edx, [esp + 0x68]
push ecx
lea eax, [esp + 0x58]
push edx
push eax
call fcn.0043f290
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 0x43c699
mov ecx, dword [esi + 0x34]
test ecx, ecx
jne 0x43c624
mov ecx, dword [0x517ac8]
inc ecx
mov dword [0x517ac8], ecx
mov dword [esi + 0x34], 0x517ac8
mov ecx, dword [esi + 0x34]
mov edx, dword [eax + 0x2c]
mov edi, dword [eax + 0x30]
mov ebx, dword [eax + 0x34]
test ecx, ecx
je 0x43c636
inc dword [ecx]
mov ecx, dword [esi + 0x38]
test ecx, ecx
je 0x43c63f
inc dword [ecx]
mov ecx, dword [esi + 0x3c]
test ecx, ecx
je 0x43c648
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 0x43c66f
mov eax, dword [edx]
dec eax
mov dword [edx], eax
jne 0x43c66f
mov eax, dword [edx + 4]
push edx
call dword [eax + 0x18]
add esp, 4
test edi, edi
je 0x43c684
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x43c684
mov ecx, dword [edi + 4]
push edi
call dword [ecx + 0x18]
add esp, 4
test ebx, ebx
je 0x43c699
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43c699
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 0x43c6b0
inc dword [ebx]
mov edx, dword [esp + 0x30]
test edx, edx
je 0x43c6ba
inc dword [edx]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x43c6c4
inc dword [ecx]
test eax, eax
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], edx
mov dword [esi + 0x3c], ecx
je 0x43c6e2
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43c6e2
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
test edi, edi
je 0x43c6f7
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x43c6f7
mov eax, dword [edi + 4]
push edi
call dword [eax + 0x18]
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x43c710
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43c710
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
push ebx
push str.exc_type
call fcn.0047ade0
mov edx, dword [esp + 0x38]
push edx
push str.exc_value
call fcn.0047ade0
mov eax, dword [esp + 0x34]
push eax
push str.exc_traceback
call fcn.0047ade0
mov edi, dword [esp + 0x94]
add esp, 0x18
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x43c764
mov ecx, dword [0x517ac8]
inc ecx
mov dword [0x517ac8], ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx], 0x517ac8
jmp 0x43c76a
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 0x43c7c0
cmp edx, 3
je 0x43c79c
cmp edx, 5
jne 0x43c7ad
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.004527d0
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 0x438e7b
cmp edi, 6
je 0x43c829
mov ebp, dword [ebx + 0x20]
mov eax, ecx
sub eax, ebp
test eax, 0xfffffffc
je 0x43c829
sub ecx, 4
mov dword [esp + 0x10], ecx
mov eax, dword [ecx]
test eax, eax
je 0x43c81a
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43c816
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 0x43c7f8
cmp edi, 3
je 0x43c83b
cmp edi, 6
je 0x43c83b
mov dword [esp + 0x3c], 0
mov eax, dword [esi + 0x14]
test eax, eax
je 0x43ca2c
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x1c]
test edx, edx
je 0x43c8cd
mov eax, dword [esp + 0x28]
cmp eax, 3
je 0x43c85f
cmp eax, 6
jne 0x43c8cd
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 0x43c8cd
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 0x43c8a0
cmp dword [esi + 0x18], ebx
jne 0x43c8a0
xor ecx, ecx
jmp 0x43c8a2
mov ecx, ebp
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebx
mov dword [esi + 0x10], edx
je 0x43c8cd
cmp edi, ebx
je 0x43c8c5
mov eax, dword [edi]
dec eax
mov dword [edi], eax
jne 0x43c8c5
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 0x43ca2c
mov ecx, dword [esp + 0x28]
mov edx, 1
cmp ecx, edx
jne 0x43c9ca
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.0043f440
mov eax, dword [esp + 0xa8]
add esp, 0xc
mov esi, dword [eax + 0x38]
cmp dword [esi + 0x10], ebp
jne 0x43c94f
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 0x43c93c
cmp dword [esi + 0x18], ebp
jne 0x43c93c
xor ecx, ecx
jmp 0x43c941
mov ecx, 1
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebp
mov dword [esi + 0x10], edx
jne 0x43c96b
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
push eax
push ecx
push edx
call fcn.0043efe0
add esp, 0xc
jmp 0x43ca2c
mov eax, dword [esp + 0x54]
cmp eax, ebp
je 0x43c98a
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x54]
cmp dword [eax], ebp
jne 0x43c98a
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
mov eax, dword [esp + 0x50]
cmp eax, ebp
je 0x43c9a9
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x50]
cmp dword [eax], ebp
jne 0x43c9a9
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
mov eax, dword [esp + 0x4c]
cmp eax, ebp
je 0x43ca2c
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x4c]
cmp dword [eax], ebp
jne 0x43ca2c
mov ecx, dword [eax + 4]
push eax
call dword [ecx + 0x18]
add esp, 4
jmp 0x43ca2c
mov ecx, dword [esp + 0x9c]
mov eax, dword [eax + 0x20]
mov esi, dword [ecx + 0x38]
cmp dword [esi + 0x10], ebp
jne 0x43ca2c
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 0x43ca00
cmp dword [esi + 0x18], ebp
jne 0x43ca00
xor ecx, ecx
jmp 0x43ca05
mov ecx, 1
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], ecx
dec edx
cmp eax, ebp
mov dword [esi + 0x10], edx
je 0x43ca2c
cmp ebx, ebp
je 0x43ca28
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43ca28
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 0x43cade
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 0x43ca55
inc dword [eax]
mov eax, dword [esi + 0x34]
test eax, eax
je 0x43ca5e
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 0x43ca85
mov eax, dword [ecx]
dec eax
mov dword [ecx], eax
jne 0x43ca85
mov edx, dword [ecx + 4]
push ecx
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x43ca9a
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43ca9a
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x43cab1
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x43cab1
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.0047ade0
mov eax, dword [esi + 0x30]
push eax
push str.exc_value
call fcn.0047ade0
mov ecx, dword [esi + 0x34]
push ecx
push str.exc_traceback
call fcn.0047ade0
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 0x43cb07
mov ecx, dword [eax]
dec ecx
mov dword [eax], ecx
jne 0x43cb07
mov edx, dword [eax + 4]
push eax
call dword [edx + 0x18]
add esp, 4
test ebx, ebx
je 0x43cb1c
mov eax, dword [ebx]
dec eax
mov dword [ebx], eax
jne 0x43cb1c
mov eax, dword [ebx + 4]
push ebx
call dword [eax + 0x18]
add esp, 4
test ebp, ebp
je 0x43cb33
mov eax, dword [ebp]
dec eax
mov dword [ebp], eax
jne 0x43cb33
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