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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x3d0
mov edx, dword [ebp + 8]
xorpd xmm0, xmm0
xorpd xmm1, xmm1
movapd xmmword [esp + 0xb0], xmm0
movsd qword [esp + 0x120], xmm1
movapd xmmword [esp + 0x110], xmm0
movapd xmmword [esp + 0x100], xmm0
movapd xmmword [esp + 0xf0], xmm0
movapd xmmword [esp + 0xe0], xmm0
movapd xmmword [esp + 0xd0], xmm0
movapd xmmword [esp + 0xc0], xmm0
mov dword [esp + 0x128], 0
mov dword [esp + 0xb0], 0x74
mov eax, dword [edx]
mov dword [esp + 0xb4], eax
lea eax, [esp + 0xb0]
mov dword [edx], eax
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
movapd xmmword [esp + 0xc0], xmm0
movapd xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
movapd xmmword [esp + 0x190], xmm0
mov byte [esp + 0x1a0], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0x1a4], 0
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x10]
mov eax, dword [eax]
mov eax, dword [0x107c4f6c]
mov edi, dword [eax]
mov ecx, dword [edi - 4]
and ecx, 0xfffffff0
cmp dword [0x107c5518], ecx
je 0x10021f2c
movzx eax, byte [eax + 8]
test al, al
je 0x10021f37
lea eax, [edx - 0x54]
cmp edi, eax
jne 0x10021f37
mov eax, dword [0x107c4f9c]
mov esi, dword [eax]
test esi, esi
setg byte [esp + 2]
setg byte [esp + 0x4c]
mov dword [esp + 0xc0], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 0
sub esp, 0xc
push edi
call sym._ijl_excstack_state
add esp, 8
mov ebx, edi
lea edi, [esp + 0x378]
push edi
push ebx
call sym._ijl_enter_handler
add esp, 4
push edi
call sym._ijl_setjmp
add esp, 0x10
test eax, eax
mov dword [esp + 0x28c], eax
je 0x1002036c
sub esp, 8
push 1
push ebx
call sym._ijl_pop_handler
add esp, 0x10
movzx edx, byte [esp + 0x4c]
mov eax, dword [esp + 0xc0]
mov eax, dword [esp + 0xbc]
mov eax, dword [esp + 0xb8]
xor ecx, ecx
mov bl, 1
mov edi, ecx
mov eax, ecx
mov esi, ecx
mov ch, cl
mov dh, bl
mov bh, ch
mov cl, dl
mov dl, bl
mov bl, ch
jmp 0x1002159a
xor eax, eax
test esi, esi
mov dword [esp + 4], ebx
jle 0x100203af
call dword [0x1003a040]
mov dword [esp + 0x200], edx
mov edi, eax
call dword [0x1003a044]
call dword [0x1003a048]
mov esi, eax
mov ebx, edx
call dword [0x1003a04c]
mov dword [esp + 0x1f8], eax
mov eax, dword [esp + 0x200]
mov ecx, edx
mov dl, 1
jmp 0x100203b1
mov edx, eax
mov dword [esp + 0x58], esi
mov esi, dword [esp + 0x1f8]
mov dword [esp + 0x88], edi
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x5c], ebx
mov ecx, 0
mov byte [esp + 1], dl
mov dword [esp + 0x50], esi
mov esi, eax
mov eax, dword [edi + 8]
mov dword [esp + 0x8c], esi
test eax, eax
cmovg ecx, eax
mov dword [esp + 0x26c], ecx
jle 0x100205e3
mov ecx, dword [0x107c52e4]
mov edx, dword [0x107c52f4]
mov dword [esp + 0x14c], ecx
mov ecx, dword [0x107c52ec]
mov dword [esp + 0x264], edx
mov dword [esp + 0x268], ecx
mov ecx, 1
jmp 0x1002044e
mov eax, dword [esp + 0xa4]
mov edx, dword [esp + 0x84]
cmp edx, dword [esp + 0x26c]
lea ecx, [edx + 1]
je 0x100205e3
lea esi, [ecx - 1]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x204], eax
cmp esi, eax
jae 0x10021d85
mov ecx, dword [edi + 4]
mov edi, dword [edi]
mov eax, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x134], edi
lea edx, [ecx + ecx]
lea ebx, [ecx + esi]
cmp ebx, edx
jae 0x10021da8
mov edx, dword [esp + 0x134]
mov ebx, esi
lea edi, [edx + esi*4]
lea esi, [ecx*4]
mov edx, edi
sub edx, dword [eax + 4]
cmp edx, esi
jae 0x10021da8
test ecx, ecx
mov dword [esp + 0x254], ebx
je 0x10021dec
mov ecx, dword [edi]
test ecx, ecx
je 0x10021df7
mov edx, dword [ecx - 4]
mov eax, dword [esp + 0x204]
mov edi, dword [ebp + 0x14]
and edx, 0xfffffff0
cmp edx, 0x80
je 0x10020437
cmp dword [esp + 0x14c], edx
jne 0x10021e06
mov esi, ecx
mov dword [esp + 0x110], ecx
add esi, 8
sub esp, 8
push esi
mov ebx, dword [ebp + 8]
push ebx
call dword [esp + 0x278]
add esp, 0x10
sub esp, 8
test al, 1
je 0x10021e1b
push esi
push ebx
call dword [esp + 0x274]
add esp, 0x10
mov dword [esp + 0x21c], eax
mov ecx, dword [edi + 8]
mov eax, dword [esp + 0x254]
cmp eax, ecx
mov dword [esp + 0xa4], ecx
jae 0x10021e5b
mov ebx, dword [edi + 4]
mov edi, dword [edi]
mov edx, dword [ebx]
lea ecx, [edx + edx]
lea esi, [edx + eax]
cmp esi, ecx
jae 0x10021e7e
mov esi, dword [ebx + 4]
lea eax, [edi + eax*4]
mov dword [esp + 0x1f0], edi
lea ecx, [edx*4]
mov edi, eax
sub edi, esi
cmp edi, ecx
mov edi, dword [esp + 0x1f0]
jae 0x10021e7e
mov edi, dword [ebp + 0x14]
test edx, edx
je 0x10021eb9
lea ecx, [ebx + 0x10]
cmp ecx, esi
je 0x100205a0
mov ecx, dword [ebx + 8]
test ecx, ecx
cmove ecx, ebx
mov edx, ecx
jmp 0x100205a2
mov edx, ebx
mov ecx, dword [esp + 0x21c]
mov dword [eax], ecx
mov eax, dword [edx - 4]
not eax
test al, 3
jne 0x10020430
mov eax, dword [ecx - 4]
test al, 1
je 0x100205cb
mov eax, dword [esp + 0xa4]
jmp 0x10020437
sub esp, 0xc
push edx
call sym._ijl_gc_queue_root
add esp, 0x10
mov eax, dword [esp + 0xa4]
jmp 0x10020437
mov eax, dword [0x107c5454]
mov ebx, dword [ebp + 0xc]
cmp dword [eax], 0xfffffc18
jle 0x1002067d
movzx eax, byte [ebx + 0x10]
mov edx, dword [ebx + 8]
mov ecx, dword [ebx + 0xc]
mov esi, dword [ebx]
mov byte [esp + 0x3f], al
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x68], edx
mov ebx, dword [ebx + 4]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x70], esi
mov esi, dword [ebp + 0x10]
movzx ecx, byte [esp + 0x3f]
mov dword [esp + 0x1e0], eax
mov eax, edi
mov edi, dword [esp + 0x58]
mov dword [esp + 0x6c], ebx
mov edx, dword [esp + 0x1e0]
mov ebx, eax
mov eax, ecx
mov ah, byte [esp + 2]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x80], edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x60], edx
mov dh, byte [esp + 1]
mov dword [esp + 0x7c], edi
mov edi, dword [esp + 0x50]
mov dl, dh
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x74], edi
mov edi, dword [esp + 0x8c]
jmp 0x10020f01
mov eax, dword [0x107c5228]
mov ebx, dword [0x107c522c]
push ebx
mov dword [esp + 0x94], eax
push eax
push 0x100352c8
push dword [ebp + 8]
call dword [0x107c5464]
add esp, 0x10
mov ecx, dword [sym.imp.libjulia.dll_jl_nothing]
cmp eax, dword [ecx]
je 0x1002083c
mov ecx, eax
mov eax, dword [0x107c5468]
mov edi, dword [0x107c5230]
mov esi, dword [0x107c5234]
mov dword [esp + 0x158], ebx
mov dword [esp + 0x108], ecx
mov dword [esp + 0x154], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], esi
sub esp, 4
lea eax, [esp + 0x10]
push 6
push eax
push 0
call sym._jl_f__call_latest
add esp, 0x10
mov ecx, dword [eax - 4]
and ecx, 0xfffffff0
cmp ecx, 0xc0
jne 0x10022058
mov ecx, dword [sym.imp.libjulia.dll_jl_false]
movzx edx, byte [esp + 2]
mov dh, byte [esp + 1]
cmp eax, dword [ecx]
je 0x10020c88
mov eax, dword [0x107c5480]
mov dword [esp + 0x160], edi
mov dword [esp + 0x16c], esi
mov edi, dword [eax]
mov esi, dword [0x107c5484]
cmp esi, edi
je 0x100208b8
sub esp, 4
push 0xa0
push edi
push esi
call sym._jl_egal__unboxed
mov dh, byte [esp + 0x11]
mov dl, byte [esp + 0x12]
add esp, 0x10
test al, 1
jne 0x100208b8
mov eax, dword [0x107c5238]
mov ebx, dword [0x107c5490]
mov dword [esp + 0x118], edi
sub esp, 8
mov dword [esp + 0x148], eax
push eax
mov eax, dword [ebp + 8]
push eax
call ebx
add esp, 0x10
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x114], eax
sub esp, 8
push esi
push dword [ebp + 8]
call ebx
add esp, 0x10
mov esi, eax
mov dword [esp + 0x110], eax
sub esp, 8
push edi
mov edi, dword [ebp + 8]
push edi
call ebx
add esp, 0x10
mov dword [esp + 0xec], esi
mov dword [esp + 0xf0], eax
push 0x7fffffff
lea eax, [esp + 0xf0]
push eax
mov ebx, dword [esp + 0x1d4]
push ebx
push edi
call dword [0x107c5494]
add esp, 0x10
cmp ebx, eax
je 0x10021a9e
mov esi, eax
sub esp, 4
push 0xa0
push eax
push ebx
call sym._jl_egal__unboxed
add esp, 0x10
mov edi, dword [esp + 4]
movzx edx, byte [esp + 2]
mov dh, byte [esp + 1]
mov ebx, dword [ebp + 0xc]
test al, 1
je 0x100208c5
mov esi, dword [esp + 0x140]
jmp 0x100208c5
mov ebx, dword [ebp + 0xc]
mov edi, dword [esp + 0x58]
mov ah, byte [esp + 2]
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x80], edi
mov edi, dword [esp + 0x5c]
mov edx, dword [ebx + 8]
mov esi, dword [ebx]
mov al, byte [ebx + 0x10]
mov dword [esp + 0x1e4], ecx
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0x7c], edi
mov edi, dword [esp + 0x50]
mov ebx, dword [ebx + 4]
mov dword [esp + 0x68], edx
mov dh, byte [esp + 1]
mov dword [esp + 0x70], esi
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x1e4]
mov dword [esp + 0x6c], ebx
mov ebx, dword [ebp + 0x14]
mov dl, dh
mov dword [esp + 0x74], edi
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x88]
mov edi, dword [esp + 0x8c]
jmp 0x10020f01
mov esi, dword [0x107c5238]
mov edi, dword [esp + 4]
mov ebx, dword [ebp + 0xc]
movsd xmm0, qword [ebx + 0x10]
mov eax, dword [ebp + 0x10]
movsd qword [esp + 0x1a0], xmm0
movsd xmm0, qword [ebx]
movsd xmm1, qword [ebx + 8]
movsd qword [esp + 0x198], xmm1
movsd qword [esp + 0x190], xmm0
mov dword [esp + 0xe8], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0xe4], eax
mov byte [esp + 0x4f], dl
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x1bc], ecx
mov dword [esp + 0x1b8], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c0], eax
mov byte [esp + 0x4e], dh
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x1b4], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1b0], eax
mov byte [esp + 0x4d], dh
mov dword [esp + 0xe0], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xd8], esi
mov eax, dword [esp + 0x154]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0xd0], eax
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0x10c], esi
sub esp, 0xc
push edi
call sym._ijl_excstack_state
add esp, 0x10
mov dword [esp + 0x1d4], eax
sub esp, 8
mov eax, edi
lea edi, [esp + 0x318]
push edi
push eax
call sym._ijl_enter_handler
add esp, 4
push edi
call sym._ijl_setjmp
add esp, 0x10
test eax, eax
je 0x10020d08
mov eax, dword [esp + 0x1d4]
mov dword [esp + 0x248], eax
sub esp, 8
push 1
push dword [esp + 0x10]
call sym._ijl_pop_handler
add esp, 0x10
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x13c], eax
movzx eax, byte [esp + 0x1a0]
mov byte [esp + 0x48], al
mov eax, dword [esp + 0x19c]
mov dword [esp + 0x250], eax
mov eax, dword [esp + 0x198]
mov dword [esp + 0x24c], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 0x244], eax
mov eax, dword [esp + 0x194]
mov dword [esp + 0x240], eax
mov esi, dword [esp + 0xe8]
mov dword [esp + 0x220], esi
mov edx, dword [esp + 0xe4]
mov dword [esp + 0x224], edx
movzx eax, byte [esp + 0x4f]
mov byte [esp + 0x47], al
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x230], eax
mov eax, dword [esp + 0x1bc]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0x234], eax
mov eax, dword [esp + 0x1c0]
mov dword [esp + 0x228], eax
movzx eax, byte [esp + 0x4e]
mov byte [esp + 0x46], al
mov eax, dword [esp + 0x1b0]
mov dword [esp + 0x23c], eax
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x238], eax
movzx eax, byte [esp + 0x4d]
mov byte [esp + 0x45], al
mov eax, dword [esp + 0xe0]
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x1d8], ecx
mov ebx, dword [esp + 0xd4]
mov edi, dword [esp + 0xd0]
mov eax, dword [esp + 0xcc]
mov eax, dword [esp + 0xc8]
mov eax, dword [esp + 0xc4]
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x128], edx
mov dword [esp + 0x124], esi
mov dword [esp + 0x120], eax
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x118], edi
mov dword [esp + 0x114], ecx
sub esp, 0xc
mov esi, dword [esp + 0x10]
push esi
call sym._ijl_current_exception
add esp, 0x10
mov ecx, dword [0x107c54c0]
mov edx, dword [0x107c525c]
mov dword [esp + 0x110], eax
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x160]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x16c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
mov eax, dword [sym.imp.libjulia.dll_jl_true]
mov eax, dword [eax]
mov dword [esp + 0x30], eax
sub esp, 4
push 0xa
lea eax, [esp + 0x14]
push eax
push 0
call sym._jl_f__call_latest
add esp, 8
push dword [esp + 0x250]
push esi
call sym._ijl_restore_excstack
add esp, 0x10
mov eax, dword [esp + 0x230]
mov ecx, dword [esp + 0x13c]
mov esi, dword [esp + 0x220]
mov ebx, dword [esp + 0x224]
movzx edx, byte [esp + 0x46]
mov edi, dword [esp + 0x238]
mov dh, byte [esp + 0x45]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x22c]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x23c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x228]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x234]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x244]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x240]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x24c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x250]
mov dword [esp + 0x64], eax
movzx eax, byte [esp + 0x48]
mov ah, byte [esp + 0x47]
jmp 0x10020f01
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi + 0x10]
mov ecx, dword [edi + 0xc]
mov esi, dword [edi]
mov ebx, dword [edi + 4]
mov byte [esp + 0x40], al
mov eax, dword [edi + 0x14]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], ebx
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov dword [esp + 0x1e8], eax
mov eax, dword [edi + 8]
mov edi, dword [esp + 0x58]
mov ecx, dword [esp + 0x1e8]
mov dword [esp + 0x80], edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x68], eax
movzx eax, byte [esp + 0x40]
mov ah, dl
mov dl, dh
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x7c], edi
mov edi, dword [esp + 0x50]
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x74], edi
mov edi, dword [esp + 0x8c]
jmp 0x10020f01
mov dword [esp + 0x258], esi
sub esp, 4
push ebx
push dword [0x107c5244]
push dword [ebp + 8]
call dword [0x107c5248]
add esp, 0x10
mov ecx, dword [eax - 4]
mov edx, dword [0x107c5250]
and ecx, 0xfffffff0
cmp dword [0x107c524c], ecx
mov ecx, dword [0x107c5254]
je 0x10020d7d
mov edi, dword [0x107c4fb0]
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x110], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
sub esp, 4
push 4
lea eax, [esp + 0x14]
push eax
push edi
call dbg.japi1__string_3436
add esp, 0x10
mov esi, dword [esp + 0x90]
mov edi, eax
jmp 0x10020db9
mov edi, dword [0x107c49ac]
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x110], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
sub esp, 4
push 4
lea eax, [esp + 0x14]
push eax
push edi
call dbg.japi1_print_to_string_3391
add esp, 0x10
mov esi, dword [esp + 0x90]
mov edi, eax
sub esp, 8
push 1
push dword [esp + 0x10]
call sym._ijl_pop_handler_noexcept
add esp, 0x10
movzx eax, byte [ebx + 0x10]
mov ecx, dword [ebx + 0x14]
mov byte [esp + 0x44], al
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0x218], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x214], eax
mov eax, dword [ebx]
mov dword [esp + 0x210], eax
mov eax, dword [ebx + 4]
mov dword [esp + 0x114], ecx
mov dword [esp + 0x110], edi
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x20c], eax
mov eax, dword [0x107c54b8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x160]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x258]
mov dword [esp + 0x28], eax
mov eax, dword [0x107c525c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1c8], eax
sub esp, 4
push 9
lea eax, [esp + 0x14]
push eax
push 0
call sym._jl_f__call_latest
add esp, 0x10
mov eax, dword [esp + 0x1c8]
mov ecx, dword [esp + 0x1ec]
mov dh, byte [esp + 1]
mov dword [esp + 0x80], esi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], ebx
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov edi, dword [esp + 0x8c]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x210]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x88]
mov dl, dh
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x20c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x214]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x218]
mov dword [esp + 0x64], eax
movzx eax, byte [esp + 0x44]
mov ah, byte [esp + 2]
mov byte [esp + 3], ah
mov byte [esp + 0xa], al
mov eax, dword [esp + 0x64]
mov dword [esp + 0x284], edi
mov edi, dword [esp + 0x60]
mov dword [esp + 0x280], ecx
mov ecx, dword [sym._jlplt_memchr_2994]
mov dword [esp + 0xa8], esi
mov byte [esp + 0x4a], dh
mov byte [esp + 0x4b], dl
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x18c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x188], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x184], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x180], eax
mov eax, dword [esi]
mov dword [esp + 0x118], esi
add esi, 4
mov dword [esp + 0x110], ebx
mov dword [esp + 0x11c], edi
sub esp, 4
push eax
push 0
push esi
call ecx
add esp, 0x10
test eax, eax
jne 0x10021f61
mov eax, dword [sym._jlplt_memchr_2994]
mov ecx, edi
mov dword [esp + 0xac], edi
add edi, 4
sub esp, 4
mov dword [esp + 0x3c], ecx
push dword [ecx]
push 0
push edi
call eax
add esp, 0x10
test eax, eax
jne 0x10021fd4
mov eax, dword [sym._jlplt_ijl_restore_incremental_3067]
push edi
push 0
push ebx
push esi
call eax
add esp, 0x10
mov ebx, dword [eax - 4]
mov edi, eax
and ebx, 0xfffffff0
cmp ebx, 0x400
mov eax, ebx
jae 0x1002100c
mov eax, ebx
mov eax, dword [ebx + 0x107c5810]
mov ecx, dword [0x107c5274]
mov dword [esp + 0x114], edi
sub esp, 8
push ecx
push eax
call sym._ijl_subtype
add esp, 0x10
test eax, eax
je 0x10021055
sub esp, 8
push 1
push dword [esp + 0x10]
call sym._ijl_pop_handler_noexcept
add esp, 0x10
xor ecx, ecx
mov dl, 1
mov ebx, ecx
mov eax, ecx
mov esi, ecx
movzx ecx, byte [esp + 3]
mov dh, dl
mov ch, dl
mov bh, bl
jmp 0x1002159a
movzx eax, byte [esp + 0xa]
cmp ebx, 0x90
mov byte [esp + 0xb], al
je 0x1002110c
mov ecx, dword [0x107c52dc]
mov esi, dword [0x107c52e0]
mov dword [esp + 0x1f4], ecx
push esi
push 0x20
push 0x1b0
mov ebx, eax
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], esi
mov esi, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xc], edi
mov byte [eax + 0x10], bl
mov dword [esp + 0x110], eax
mov dword [esp + 0x10], eax
mov dword [eax + 0xc], esi
mov dword [eax + 8], edx
mov esi, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov dword [eax + 0x14], ecx
mov dword [eax + 4], esi
mov dword [eax], edx
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x14], eax
sub esp, 4
lea eax, [esp + 0x10]
push 3
push eax
push dword [esp + 0x200]
call sym._ijl_apply_generic
add esp, 0x10
mov ebx, eax
cmp dword [ebx + 8], 0
jne 0x10021184
jmp 0x10021484
mov edx, dword [esp + 0x98]
mov ecx, dword [esp + 0x94]
mov esi, dword [esp + 0x9c]
mov dword [esp + 0x2ec], edx
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x2e8], ecx
mov dword [esp + 0x2f0], esi
mov dword [esp + 0x2f4], edx
mov byte [esp + 0x2f8], al
mov eax, dword [esp + 0x38]
mov dword [esp + 0x100], eax
mov dword [esp + 0x2fc], eax
lea eax, [esp + 0x2e8]
push dword [esp + 0xa8]
push eax
push edi
push dword [ebp + 8]
call dbg.julia_register_restored_modules_3163
add esp, 0x10
mov ebx, eax
cmp dword [ebx + 8], 0
je 0x10021484
mov edi, dword [ebx + 4]
mov esi, dword [ebx]
mov eax, dword [edi]
test eax, eax
je 0x1002206c
mov ecx, esi
shl eax, 2
sub ecx, dword [edi + 4]
cmp ecx, eax
jae 0x1002206c
mov edi, dword [esi]
test edi, edi
je 0x100220a2
mov ecx, dword [edi - 4]
and ecx, 0xfffffff0
cmp ecx, 0x80
jne 0x100220b1
mov ecx, dword [0x107c5284]
mov esi, 1
mov dword [esp + 0x15c], ebx
mov dword [esp + 0x150], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x17c], ecx
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x178], ecx
movzx ecx, byte [esp + 0xa]
inc cl
and cl, 0x7f
mov byte [esp + 0x49], cl
cmp cl, 1
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x174], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x170], ecx
mov ecx, 4
jne 0x10021330
nop dword [eax]
mov eax, dword [sym._jlplt_ijl_module_parent_3007]
mov dword [esp + 0x114], ebx
mov dword [esp + 0x144], ecx
mov dword [esp + 0x110], edi
sub esp, 0xc
push edi
call eax
add esp, 0x10
cmp eax, edi
jne 0x100212b0
push edi
push dword [ebp + 8]
lea eax, [esp + 0xfc]
push eax
lea eax, [esp + 0x2a4]
push eax
call dword [esp + 0x160]
add esp, 0x10
cmp byte [esp + 0x2a8], 0
jne 0x100212b0
mov eax, dword [esp + 0x2ac]
cmp eax, dword [esp + 0xac]
je 0x10021671
sub esp, 4
push 0xa0
push dword [esp + 0x40]
push eax
call sym._jl_egal__unboxed
add esp, 0x10
test al, 1
jne 0x10021671
cmp esi, dword [ebx + 8]
jae 0x10021484
mov eax, dword [ebx + 4]
mov edx, dword [eax]
lea ecx, [edx + edx]
lea edi, [esi + edx]
cmp edi, ecx
mov ecx, dword [ebx]
jae 0x10021ee3
mov edi, ecx
lea ebx, [edx*4]
sub edi, dword [eax + 4]
add edi, dword [esp + 0x144]
cmp edi, ebx
jae 0x10021ee3
test edx, edx
je 0x10021ec4
mov eax, dword [ecx + esi*4]
mov ebx, dword [esp + 0x15c]
test eax, eax
je 0x10021ecf
mov ecx, dword [eax - 4]
mov edx, dword [esp + 0x144]
inc esi
mov edi, eax
and ecx, 0xfffffff0
add edx, 4
cmp ecx, 0x80
mov ecx, edx
je 0x10021230
jmp 0x10021470
mov eax, dword [sym._jlplt_ijl_module_parent_3007]
mov dword [esp + 0x114], ebx
mov dword [esp + 0x148], ecx
mov dword [esp + 0x110], edi
sub esp, 0xc
push edi
call eax
add esp, 0x10
cmp eax, edi
jne 0x10021400
push edi
push dword [ebp + 8]
lea eax, [esp + 0xfc]
push eax
lea eax, [esp + 0x2a4]
push eax
call dword [esp + 0x160]
add esp, 0x10
cmp byte [esp + 0x49], 2
jne 0x1002138a
cmp byte [esp + 0x2a8], 0
je 0x10021400
mov eax, dword [esp + 0x2a0]
mov ecx, dword [esp + 0x298]
mov edx, dword [esp + 0x29c]
xor eax, dword [esp + 0x174]
xor ecx, dword [esp + 0x17c]
xor edx, dword [esp + 0x178]
or ecx, eax
mov eax, dword [esp + 0x2a4]
xor eax, dword [esp + 0x170]
or edx, eax
or edx, ecx
jne 0x10021400
mov eax, dword [esp + 0x2ac]
cmp eax, dword [esp + 0xac]
je 0x10021671
sub esp, 4
push 0xa0
push dword [esp + 0x40]
push eax
call sym._jl_egal__unboxed
add esp, 0x10
test al, 1
jne 0x10021671
nop dword [eax + eax]
cmp esi, dword [ebx + 8]
jae 0x10021484
mov eax, dword [ebx + 4]
mov ebx, dword [ebx]
mov edx, dword [eax]
lea ecx, [edx + edx]
lea edi, [esi + edx]
cmp edi, ecx
jae 0x10021ede
mov edi, ebx
lea ecx, [edx*4]
sub edi, dword [eax + 4]
add edi, dword [esp + 0x148]
cmp edi, ecx
jae 0x10021ede
test edx, edx
je 0x10021ec4
mov eax, dword [ebx + esi*4]
mov ebx, dword [esp + 0x15c]
test eax, eax
je 0x10021ecf
mov ecx, dword [eax - 4]
mov edx, dword [esp + 0x148]
inc esi
mov edi, eax
and ecx, 0xfffffff0
add edx, 4
cmp ecx, 0x80
mov ecx, edx
je 0x10021330
sub esp, 4
push eax
push dword [0x107c5890]
push str.typeassert
call sym._ijl_type_error
mov eax, dword [esp + 0x94]
mov dword [esp + 0x2b8], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x2bc], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x2c0], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x2c4], eax
movzx eax, byte [esp + 0xb]
mov byte [esp + 0x2c8], al
mov eax, dword [esp + 0x38]
mov dword [esp + 0xfc], eax
mov dword [esp + 0x2cc], eax
mov eax, dword [0x107c5244]
sub esp, 4
lea ecx, [esp + 0x2bc]
push ecx
push eax
push dword [ebp + 8]
call dword [0x107c5248]
add esp, 0x10
mov ecx, dword [eax - 4]
mov edx, dword [0x107c52cc]
and ecx, 0xfffffff0
cmp dword [0x107c524c], ecx
mov ecx, dword [0x107c52d0]
je 0x10021545
mov esi, dword [0x107c4fb0]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x14], ecx
sub esp, 4
lea eax, [esp + 0x10]
push 3
push eax
push esi
call dbg.japi1__string_3436
add esp, 0x10
mov esi, eax
mov eax, dword [esp + 4]
jmp 0x10021577
mov esi, dword [0x107c49ac]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x14], ecx
sub esp, 4
lea eax, [esp + 0x10]
push 3
push eax
push esi
call dbg.japi1_print_to_string_3391
add esp, 0x10
mov esi, eax
mov eax, dword [esp + 4]
sub esp, 8
push 1
push eax
call sym._ijl_pop_handler_noexcept
add esp, 0x10
xor ecx, ecx
mov dh, 1
mov dl, cl
mov edi, ecx
mov eax, ecx
movzx ecx, byte [esp + 3]
mov bh, dh
mov ch, dl
mov bl, dl
test cl, 1
mov cl, bl
mov dword [esp + 0x138], eax
mov al, dh
mov bl, dl
je 0x100215ec
mov byte [esp + 0x41], al
mov eax, dword [sym._jlplt_jl_cumulative_compile_timing_disable_3002]
mov edx, dword [esp + 0x138]
mov dword [esp + 0x118], esi
mov byte [esp + 0x42], bh
mov byte [esp + 0x43], ch
mov bh, cl
mov dword [esp + 0x114], edx
mov dword [esp + 0x110], edi
call eax
mov cl, bh
movzx eax, byte [esp + 0x41]
mov bh, byte [esp + 0x42]
mov ch, byte [esp + 0x43]
cmp dword [esp + 0x28c], 0
jne 0x10021f41
mov edx, dword [ebp + 8]
test bl, bl
je 0x1002161f
test al, al
je 0x10021651
test ch, ch
mov eax, edi
jne 0x10021660
sub esp, 8
push dword [0x107c54ac]
push dword [0x107c551c]
call sym._ijl_undefined_var_error
test bh, bh
je 0x10021f4d
mov edi, dword [0x107c5278]
mov dword [esp + 0x118], esi
push edi
push 8
push 0x18c
push dword [edx + 8]
call sym._ijl_gc_pool_alloc_instrumented
mov edx, dword [ebp + 8]
add esp, 0x10
mov dword [eax - 4], edi
mov dword [eax], esi
jmp 0x10021660
mov eax, dword [esp + 0x138]
test cl, cl
je 0x10022044
mov ecx, dword [esp + 0xb4]
mov dword [edx], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test byte [esp + 3], 1
mov eax, dword [esp + 4]
je 0x10021d5b
mov eax, dword [sym._jlplt_ijl_hrtime_2978]
mov dword [esp + 0x118], edi
call eax
test byte [esp + 0x4a], 1
je 0x100220b8
sub eax, dword [esp + 0x280]
sbb edx, dword [esp + 0x284]
movd xmm0, eax
movd xmm1, edx
punpckldq xmm0, xmm1
punpckldq xmm0, xmmword [0x10035090]
subpd xmm0, xmmword [0x100350a0]
movapd xmm1, xmm0
unpckhpd xmm1, xmm0
addsd xmm1, xmm0
movapd xmm0, xmm1
divsd xmm0, qword [0x100350b0]
movapd xmm1, xmm0
subsd xmm1, xmm0
ucomisd xmm1, xmm1
jp 0x1002171f
sub esp, 0x20
mov ecx, dword [ebp + 8]
mov eax, esp
movsd qword [eax + 4], xmm0
mov dword [eax + 0x10], 0xa
mov dword [eax + 0xc], 1
mov dword [eax], ecx
call dword [0x107c528c]
add esp, 0x20
fstp qword [esp + 0x300]
movsd xmm0, qword [esp + 0x300]
mov dword [esp + 0x288], edi
movsd qword [esp + 0x2b0], xmm0
call dword [0x1003a048]
mov edi, eax
mov esi, edx
call dword [0x1003a04c]
test byte [esp + 0x4b], 1
je 0x100220cc
mov dword [esp + 0x25c], edi
sub edi, dword [esp + 0x180]
mov dword [esp + 0x260], esi
mov dword [esp + 0x274], eax
movzx ebx, byte [esp + 0xb]
mov dword [esp + 0x278], edx
sbb esi, dword [esp + 0x184]
sub eax, dword [esp + 0x188]
mov dword [esp + 0x168], edi
mov dword [esp + 0x270], eax
mov eax, edx
mov dword [esp + 0x164], esi
sbb eax, dword [esp + 0x18c]
mov dword [esp + 0x27c], eax
sub esp, 0x10
movsd xmm0, qword [esp + 0x2c0]
mov edi, dword [ebp + 8]
mov eax, esp
movsd qword [eax + 4], xmm0
mov dword [eax], edi
call dword [0x107c5294]
add esp, 0x10
mov esi, eax
mov eax, dword [0x107c5778]
test eax, eax
jne 0x100217f5
mov dword [esp + 0x114], esi
sub esp, 4
mov eax, dword [sym.imp.libjulia_internal.dll_jl_libjulia_internal_handle]
push eax
push str.ijl_alloc_string
push 3
call sym._ijl_load_and_lookup
add esp, 0x10
mov dword [0x107c5778], eax
mov dword [esp + 0x114], esi
sub esp, 0xc
push 1
call eax
add esp, 0x10
mov byte [eax + 4], 0x20
mov dword [esp + 0x110], eax
push eax
push 9
push esi
push edi
call dword [0x107c529c]
add esp, 0x10
mov ecx, dword [0x107c52a0]
mov dword [esp + 0x114], eax
sub esp, 4
push ecx
push eax
push edi
call dbg.julia_print_3161
add esp, 0x10
mov eax, dword [esp + 0x178]
mov esi, dword [0x107c52ac]
mov dword [esp + 0x2d4], eax
mov eax, dword [esp + 0x17c]
mov dword [esp + 0x2d0], eax
mov eax, dword [esp + 0x170]
mov dword [esp + 0x2dc], eax
mov eax, dword [esp + 0x174]
mov dword [esp + 0x2d8], eax
mov eax, dword [esp + 0x38]
mov byte [esp + 0x2e0], bl
mov dword [esp + 0x104], eax
mov dword [esp + 0x2e4], eax
sub esp, 4
lea eax, [esp + 0x2d4]
push eax
push esi
push edi
call dword [0x107c52b0]
add esp, 0x10
test eax, eax
js 0x10021914
mov ebx, dword [esi + 8]
mov ecx, dword [ebx]
lea edx, [ecx + ecx]
lea esi, [ecx + eax - 1]
cmp esi, edx
mov esi, dword [ebx + 4]
jae 0x100220e0
lea edx, [ecx*8]
lea edi, [eax*8 - 8]
lea edi, [edi + edi*2]
lea edx, [edx + edx*2]
cmp edi, edx
jae 0x100220e0
test ecx, ecx
je 0x10022122
dec eax
mov edi, dword [ebp + 8]
lea eax, [eax + eax*2]
mov eax, dword [esi + eax*8 + 0x14]
test eax, eax
je 0x1002212d
mov ecx, dword [0x107c52b4]
mov dword [esp + 0x114], eax
sub esp, 4
push ecx
push eax
push edi
call dbg.julia_print_3161
add esp, 0x10
sub esp, 8
push dword [esp + 0x40]
push edi
call dword [0x107c52b8]
add esp, 0x10
mov eax, dword [esp + 0x25c]
mov ecx, dword [esp + 0x260]
xor eax, dword [esp + 0x180]
xor ecx, dword [esp + 0x184]
or ecx, eax
je 0x10021b21
mov eax, dword [esp + 0x168]
mov ecx, 0x64
movsd xmm0, qword [esp + 0x2b0]
mul ecx
imul ecx, dword [esp + 0x164], 0x64
mulsd xmm0, qword [0x100350b0]
movd xmm1, eax
add ecx, edx
movd xmm2, ecx
punpckldq xmm1, xmm2
punpckldq xmm1, xmmword [0x10035090]
subpd xmm1, xmmword [0x100350a0]
movapd xmm2, xmm1
unpckhpd xmm2, xmm1
addsd xmm2, xmm1
divsd xmm2, xmm0
sub esp, 0x30
mov eax, esp
mov dword [eax], edi
movsd qword [eax + 4], xmm2
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0x2e
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 2
call dword [0x107c52bc]
add esp, 0x30
mov dword [esp + 0x11c], eax
mov ebx, eax
mov eax, dword [0x107c4ffc]
mov ecx, dword [0x107c5000]
lea esi, [esp + 0x30c]
push ecx
push eax
push edi
push esi
call dword [0x107c52c0]
add esp, 0x10
mov ecx, edx
and cl, 0x7f
cmp cl, 1
jne 0x10021aba
test dl, dl
mov ecx, esi
mov edi, dword [0x107c5008]
cmovs ecx, eax
mov eax, dword [0x107c5004]
mov dword [esp + 0x1fc], eax
mov eax, dword [sym.imp.libjulia.dll_jl_false]
mov esi, dword [eax]
sub esp, 0xc
push dword [ecx]
call sym._ijl_box_int32
add esp, 0x10
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x114], eax
mov dword [esp + 0x24], eax
mov eax, dword [0x107c4740]
mov dword [esp + 0x28], eax
mov eax, dword [0x107c51f8]
mov dword [esp + 0x2c], eax
mov eax, dword [0x107c500c]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], eax
lea eax, [esp + 0xc]
push dword [esp + 0x1fc]
push 0xb
push eax
push edi
call sym._ijl_invoke
add esp, 0x10
jmp 0x10021b21
mov esi, dword [esp + 0x140]
mov edi, dword [esp + 4]
movzx edx, byte [esp + 2]
mov dh, byte [esp + 1]
mov ebx, dword [ebp + 0xc]
jmp 0x100208c5
mov ecx, dword [sym.imp.libjulia.dll_jl_false]
mov dword [esp + 0x114], eax
lea edx, [esp + 0xc]
mov ecx, dword [ecx]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov eax, dword [0x107c4740]
mov ecx, dword [0x107c500c]
mov dword [esp + 0x28], eax
mov eax, dword [0x107c51f8]
mov dword [esp + 0x2c], eax
mov eax, dword [0x107c5024]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ecx
mov ecx, dword [0x107c5008]
push eax
push 0xb
push edx
push ecx
call sym._ijl_invoke
add esp, 0x10
mov eax, dword [esp + 0x274]
mov ecx, dword [esp + 0x278]
xor eax, dword [esp + 0x188]
xor ecx, dword [esp + 0x18c]
or ecx, eax
je 0x10021d41
mov eax, dword [esp + 0x270]
imul esi, dword [esp + 0x27c], 0x64
mov ecx, 0x64
movapd xmm2, xmmword [0x100350a0]
movd xmm4, dword [esp + 0x164]
mul ecx
add esi, edx
movd xmm0, eax
movd xmm1, esi
punpckldq xmm0, xmm1
movdqa xmm1, xmmword [0x10035090]
punpckldq xmm0, xmm1
subpd xmm0, xmm2
movapd xmm3, xmm0
unpckhpd xmm3, xmm0
addsd xmm3, xmm0
movd xmm0, dword [esp + 0x168]
punpckldq xmm0, xmm4
punpckldq xmm0, xmm1
subpd xmm0, xmm2
movapd xmm1, xmm0
unpckhpd xmm1, xmm0
addsd xmm1, xmm0
movapd xmm0, xmm3
divsd xmm0, xmm1
movsd xmm1, qword [0x100350b8]
ucomisd xmm1, xmm0
ja 0x10021c15
sub esp, 0x30
mov esi, dword [ebp + 8]
mov eax, esp
movsd qword [eax + 4], xmm0
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0x2e
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax], esi
call dword [0x107c52bc]
mov edx, esi
add esp, 0x30
mov esi, eax
jmp 0x10021c1e
mov esi, dword [0x107c5030]
mov edx, dword [ebp + 8]
mov eax, dword [0x107c501c]
mov ecx, dword [0x107c5020]
lea edi, [esp + 0x308]
mov dword [esp + 0x11c], esi
push ecx
push eax
push edx
push edi
call dword [0x107c52c0]
add esp, 0x10
mov ecx, edx
and cl, 0x7f
cmp cl, 1
jne 0x10021cda
test dl, dl
mov ecx, edi
mov ebx, dword [0x107c5004]
cmovs ecx, eax
mov eax, dword [0x107c5008]
mov dword [esp + 0x208], eax
mov eax, dword [sym.imp.libjulia.dll_jl_false]
mov edi, dword [eax]
sub esp, 0xc
push dword [ecx]
call sym._ijl_box_int32
add esp, 0x10
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x114], eax
mov dword [esp + 0x24], eax
mov eax, dword [0x107c4740]
mov dword [esp + 0x28], eax
mov eax, dword [0x107c5010]
mov dword [esp + 0x2c], eax
mov eax, dword [0x107c5014]
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], eax
lea eax, [esp + 0xc]
push ebx
push 0xb
push eax
push dword [esp + 0x214]
call sym._ijl_invoke
add esp, 0x10
jmp 0x10021d41
mov ecx, dword [sym.imp.libjulia.dll_jl_false]
mov dword [esp + 0x114], eax
lea edx, [esp + 0xc]
mov ecx, dword [ecx]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov eax, dword [0x107c4740]
mov ecx, dword [0x107c5014]
mov dword [esp + 0x28], eax
mov eax, dword [0x107c5010]
mov dword [esp + 0x2c], eax
mov eax, dword [0x107c5024]
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], ecx
mov ecx, dword [0x107c5008]
push eax
push 0xb
push edx
push ecx
call sym._ijl_invoke
add esp, 0x10
sub esp, 0xc
push dword [ebp + 8]
call dword [0x107c52c4]
add esp, 0x10
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x288]
sub esp, 8
push 1
push eax
call sym._ijl_pop_handler_noexcept
add esp, 0x10
xor ecx, ecx
mov eax, edi
mov dl, 1
mov dh, cl
mov edi, ecx
mov esi, ecx
movzx ecx, byte [esp + 3]
mov ebx, edx
mov ch, dh
mov bh, dh
jmp 0x1002159a
mov eax, dword [esp + 0x84]
mov dword [esp + 0x290], eax
sub esp, 4
lea eax, [esp + 0x294]
push eax
push edi
push dword [ebp + 8]
call dword [0x107c52d8]
mov esi, dword [0x107c5704]
mov edi, eax
mov dword [esp + 0x110], eax
push esi
push 0x10
push 0x198
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov ecx, dword [esp + 0x134]
mov dword [eax - 4], esi
mov dword [eax], ecx
mov dword [eax + 4], edi
sub esp, 8
push dword [esp + 0x8c]
push eax
call sym._ijl_bounds_error_int
sub esp, 8
push 1
push eax
call sym._ijl_bounds_error_int
mov eax, dword [sym.imp.libjulia.dll_jl_undefref_exception]
sub esp, 0xc
push dword [eax]
call sym._ijl_throw
sub esp, 4
push ecx
push dword [esp + 0x154]
push str.typeassert
call sym._ijl_type_error
push dword [0x107c52f8]
push ebx
call dword [0x107c56e4]
add esp, 0x10
mov esi, dword [0x107c56ec]
mov edi, eax
mov dword [esp + 0x110], eax
push esi
push 8
push 0x18c
push dword [ebx + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], esi
mov dword [eax], edi
sub esp, 0xc
push eax
call sym._ijl_throw
mov eax, dword [esp + 0x84]
mov dword [esp + 0x294], eax
sub esp, 4
lea eax, [esp + 0x298]
push eax
push edi
push dword [ebp + 8]
call dword [0x107c52d8]
mov esi, dword [0x107c5704]
mov dword [esp + 0x110], ebx
push esi
push 0x10
push 0x198
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], esi
mov dword [eax], edi
mov dword [eax + 4], ebx
sub esp, 8
push dword [esp + 0x8c]
push eax
call sym._ijl_bounds_error_int
sub esp, 8
push 1
push ebx
call sym._ijl_bounds_error_int
sub esp, 8
push 1
push eax
call sym._ijl_bounds_error_int
mov eax, dword [sym.imp.libjulia.dll_jl_undefref_exception]
sub esp, 0xc
push dword [eax]
call sym._ijl_throw
inc esi
mov edi, eax
jmp 0x10021ee8
inc esi
mov ebx, ecx
mov edi, eax
mov dword [esp + 0x1dc], esi
mov esi, ebx
mov ebx, dword [0x107c5704]
mov dword [esp + 0x110], edi
push ebx
push 0x10
push 0x198
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], ebx
mov dword [eax], esi
mov dword [eax + 4], edi
sub esp, 8
push dword [esp + 0x1e4]
push eax
call sym._ijl_bounds_error_int
sub esp, 8
push eax
push edx
call dword [0x107c5220]
sub esp, 0xc
push edx
call dword [0x107c5300]
sub esp, 0xc
push dword [ebp + 8]
call dword [0x107c5738]
sub esp, 8
push dword [0x107c54ac]
push dword [0x107c551c]
call sym._ijl_undefined_var_error
mov ecx, dword [esp + 0xa8]
mov eax, dword [0x107c5260]
mov dword [esp + 0xc], ecx
sub esp, 4
lea esi, [esp + 0x10]
push 1
push esi
push eax
call sym._ijl_apply_generic
add esp, 0x10
mov edx, dword [0x107c526c]
mov ecx, dword [0x107c5268]
mov dword [esp + 0x110], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
sub esp, 4
push 2
push esi
push ecx
call sym._ijl_apply_generic
add esp, 0x10
mov ecx, dword [0x107c4a18]
mov dword [esp + 0x110], eax
mov dword [esp + 0xc], eax
sub esp, 4
push 1
push esi
push ecx
call sym._ijl_apply_generic
add esp, 4
push eax
call sym._ijl_throw
mov ecx, dword [esp + 0x38]
mov eax, dword [0x107c5260]
mov dword [esp + 0xc], ecx
sub esp, 4
lea esi, [esp + 0x10]
push 1
push esi
push eax
call sym._ijl_apply_generic
add esp, 0x10
mov edx, dword [0x107c526c]
mov ecx, dword [0x107c5268]
mov dword [esp + 0x110], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
sub esp, 4
push 2
push esi
push ecx
call sym._ijl_apply_generic
add esp, 0x10
mov ecx, dword [0x107c4a18]
mov dword [esp + 0x110], eax
mov dword [esp + 0xc], eax
sub esp, 4
push 1
push esi
push ecx
call sym._ijl_apply_generic
add esp, 4
push eax
call sym._ijl_throw
sub esp, 8
push dword [0x107c54ac]
push dword [0x107c551c]
call sym._ijl_undefined_var_error
sub esp, 4
push eax
push dword [0x107c58d0]
push 0x100352cc
call sym._ijl_type_error
mov ebx, dword [0x107c5704]
mov dword [esp + 0x110], edi
push ebx
push 0x10
push 0x198
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], ebx
mov dword [eax], esi
mov dword [eax + 4], edi
sub esp, 8
push 1
push eax
call sym._ijl_bounds_error_int
mov eax, dword [sym.imp.libjulia.dll_jl_undefref_exception]
sub esp, 0xc
push dword [eax]
call sym._ijl_throw
mov eax, edi
jmp 0x10021470
sub esp, 8
push dword [0x107c54ac]
push dword [0x107c5288]
call sym._ijl_undefined_var_error
sub esp, 8
push dword [0x107c54ac]
push dword [0x107c5290]
call sym._ijl_undefined_var_error
mov edi, dword [0x107c52c8]
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x114], ebx
push edi
push 0x10
push 0x198
mov eax, dword [ebp + 8]
push dword [eax + 8]
call sym._ijl_gc_pool_alloc_instrumented
add esp, 0x10
mov dword [eax - 4], edi
mov dword [eax], esi
mov dword [eax + 4], ebx
sub esp, 8
push dword [esp + 0x1d8]
push eax
call sym._ijl_bounds_error_int
sub esp, 8
push 1
push ebx
call sym._ijl_bounds_error_int
mov eax, dword [sym.imp.libjulia.dll_jl_undefref_exception]
sub esp, 0xc
push dword [eax]
call sym._ijl_throw
nop dword [eax]