Function at 0x543c70
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x7b1178]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x18c]
cmp eax, dword [ecx + 8]
jbe 0x547bec
sub esp, 0x20c
nop
lea eax, [0x609000]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x210]
mov dword [eax], ecx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x543cc0
mov edx, dword [esp + 0x214]
jmp 0x543cce
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x214]
mov dword [edi], edx
mov dword [esp + 0x178], eax
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x1c], 0x7fffffff
mov dword [eax + 0x20], 0xffffffff
mov dword [eax + 0x24], 0x7fffffff
lea ecx, [0x5ea920]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 0x210]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 4]
mov dword [esp + 0x208], edx
mov ebx, dword [esp + 0x214]
mov dword [esp], ebx
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call ecx
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x544d28
mov eax, dword [esp + 0x208]
cmp byte [eax], 0x7f
jne 0x543d8d
cmp byte [eax + 1], 0x45
jne 0x543d8d
cmp byte [eax + 2], 0x4c
jne 0x543d8d
cmp byte [eax + 3], 0x46
je 0x543e29
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x10
lea ecx, [0x621f84]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x208]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], 0x10
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x5e6c00]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x543e00
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x60b7e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x19c], eax
mov ecx, dword [esp + 0x208]
movzx edx, byte [ecx + 4]
mov byte [eax], dl
movzx edx, dl
cmp dl, 1
je 0x543e60
cmp dl, 2
jne 0x544cc1
movzx edx, byte [ecx + 5]
mov byte [eax + 1], dl
movzx edx, dl
cmp dl, 1
jne 0x543e77
lea edx, [0x66f74c]
jmp 0x543e86
cmp dl, 2
jne 0x544c59
lea edx, [0x66f724]
mov dword [eax + 8], edx
lea ebx, [0x7b1020]
mov dword [eax + 0xc], ebx
movzx ebp, byte [ecx + 6]
xchg ebp, ebx
mov byte [eax + 2], bl
xchg ebp, ebx
xchg ebp, eax
movzx eax, al
xchg ebp, eax
xchg ebp, eax
cmp al, 1
xchg ebp, eax
jne 0x544bf1
mov dword [esp + 0xa4], edx
movzx ebp, byte [ecx + 7]
xchg ebp, ebx
mov byte [eax + 3], bl
xchg ebp, ebx
movzx ecx, byte [ecx + 8]
mov byte [eax + 4], cl
movzx ecx, byte [eax]
cmp cl, 1
je 0x54435c
cmp cl, 2
je 0x543f04
xor ecx, ecx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x50], ecx
xor ecx, ecx
mov dword [esp + 0x78], ecx
xor ecx, ecx
mov dword [esp + 0x7c], ecx
xor ecx, ecx
mov dword [esp + 0x54], ecx
xor ecx, ecx
mov dword [esp + 0x44], ecx
xor ecx, ecx
jmp 0x5446fd
lea eax, [0x5ed720]
mov dword [esp], eax
mov dword [esp + 4], 0x40
mov dword [esp + 8], 0x40
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b8], eax
mov ecx, dword [esp + 0x178]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], 0x40
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call sym.io._SectionReader_.ReadAt
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x544338
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
lea ebp, [ebx + 0x10]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x30
mov dword [esp + 0xc], 0x30
call ecx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x19c]
mov word [ecx + 0x10], ax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x1c]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x12]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x2e
mov dword [esp + 0xc], 0x2e
call edx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x19c]
mov word [ecx + 0x12], ax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x18]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x28
mov dword [esp + 0xc], 0x28
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x19c]
mov dword [edx + 0x14], eax
mov dword [edx + 0x18], ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x2c
mov dword [esp + 0xc], 0x2c
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x19c]
cmp byte [ecx + 2], al
jne 0x5442ca
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x24]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
lea ebp, [ebx + 0x20]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x20
mov dword [esp + 0xc], 0x20
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x1b8]
lea ebx, [edx + 0x36]
lea ebp, [edx + 0x38]
mov dword [esp + 0x1b4], ebp
lea esi, [edx + 0x28]
mov dword [esp + 0x1b0], esi
lea edi, [edx + 0x3a]
mov dword [esp + 0x1ac], edi
lea edi, [edx + 0x3c]
mov dword [esp + 0x1a8], edi
add edx, 0x3e
mov dword [esp + 0x1a4], edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x108], edx
lea edx, [0x7b1020]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0xa
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0x104], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b4]
mov dword [esp + 4], ebp
mov dword [esp + 8], 8
mov dword [esp + 0xc], 8
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x24]
movzx edx, word [esp + 0x10]
mov dword [esp + 0x100], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b0]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], 0x18
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x48], edx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xfc], ebx
lea ebp, [0x7b1020]
mov dword [esp], ebp
mov esi, dword [esp + 0x1ac]
mov dword [esp + 4], esi
mov dword [esp + 8], 6
mov dword [esp + 0xc], 6
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0xf8], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1a8]
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0xf4], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1a4]
mov dword [esp + 4], ebp
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call ecx
movzx eax, word [esp + 0x10]
mov edx, dword [esp + 0xa4]
lea ebx, [0x7b1020]
mov ecx, dword [esp + 0xfc]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x108]
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x19c]
mov ecx, dword [esp + 0xfc]
jmp 0x5446fd
mov dword [esp + 0x108], eax
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x16
lea ecx, [0x624ff8]
mov dword [eax + 8], ecx
lea ecx, [0x5f57c0]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x108]
movzx ecx, cl
lea edx, [0x77dc60]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x14], ecx
mov dword [esp + 0x218], 0
lea ecx, [0x66e2c0]
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
lea eax, [0x5ed720]
mov dword [esp], eax
mov dword [esp + 4], 0x34
mov dword [esp + 8], 0x34
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b8], eax
mov ecx, dword [esp + 0x178]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x34
mov dword [esp + 0xc], 0x34
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call sym.io._SectionReader_.ReadAt
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x544bcd
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
lea ebp, [ebx + 0x10]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x24
mov dword [esp + 0xc], 0x24
call ecx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x19c]
mov word [ecx + 0x10], ax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x1c]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x12]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x22
mov dword [esp + 0xc], 0x22
call edx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x19c]
mov word [ecx + 0x12], ax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x18]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x1c
mov dword [esp + 0xc], 0x1c
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x19c]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], 0
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x20
mov dword [esp + 0xc], 0x20
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x19c]
cmp byte [ecx + 2], al
jne 0x544b5f
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x20]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
lea ebp, [ebx + 0x1c]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], 0x18
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x1b8]
lea ebx, [edx + 0x2a]
lea ebp, [edx + 0x2c]
mov dword [esp + 0x1b4], ebp
lea esi, [edx + 0x20]
mov dword [esp + 0x1b0], esi
lea edi, [edx + 0x2e]
mov dword [esp + 0x1ac], edi
lea edi, [edx + 0x30]
mov dword [esp + 0x1a8], edi
add edx, 0x32
mov dword [esp + 0x1a4], edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x70], edx
lea edx, [0x7b1020]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0xa
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0x104], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b4]
mov dword [esp + 4], ebp
mov dword [esp + 8], 8
mov dword [esp + 0xc], 8
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x20]
movzx edx, word [esp + 0x10]
mov dword [esp + 0x100], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b0]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x14
mov dword [esp + 0xc], 0x14
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x48], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1ac]
mov dword [esp + 4], ebp
mov dword [esp + 8], 6
mov dword [esp + 0xc], 6
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0xf8], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1a8]
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x1c]
movzx edx, word [esp + 0x10]
mov dword [esp + 0xf4], edx
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1a4]
mov dword [esp + 4], ebp
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call ecx
movzx eax, word [esp + 0x10]
mov edx, dword [esp + 0xa4]
lea ebx, [0x7b1020]
xor ecx, ecx
mov ebp, dword [esp + 0x48]
xor esi, esi
mov edi, dword [esp + 0x70]
mov edx, dword [esp + 0xf4]
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x100]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x104]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0xf8]
mov dword [esp + 0x54], edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0xa4]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ecx
test ecx, ecx
jl 0x544ace
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], esi
test esi, esi
jl 0x544a3d
test ecx, ecx
sete bl
mov byte [esp + 0x2f], bl
test ebp, ebp
sete dl
and edx, ebx
test dl, dl
je 0x5447ca
mov edx, dword [esp + 0x50]
test edx, edx
je 0x544871
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x1d
lea ecx, [0x628946]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5447a1
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov edx, dword [esp + 0x50]
test edx, edx
jle 0x544871
mov ebx, dword [esp + 0x44]
cmp ebx, edx
jge 0x5447e8
movzx ebx, byte [esp + 0x2f]
jmp 0x544871
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x14
lea ecx, [0x623e78]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x544848
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
movzx edx, byte [eax]
cmp dl, 1
jne 0x54488e
mov edx, 0x20
mov edx, 0x28
mov dword [esp + 0x34], edx
mov edx, 0x20
jmp 0x5448b2
cmp dl, 2
jne 0x5448a8
mov edx, 0x38
mov edx, 0x40
mov dword [esp + 0x34], edx
mov edx, 0x38
jmp 0x5448b2
xor edx, edx
xor edx, edx
mov dword [esp + 0x34], edx
xor edx, edx
mov ebx, dword [esp + 0x78]
test ebx, ebx
jle 0x544953
mov ecx, dword [esp + 0x7c]
cmp ecx, edx
jge 0x544953
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x15
lea ecx, [0x624735]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x54492a
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x5f6d00]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call sym.runtime.makeslice
mov eax, dword [esp + 0x78]
mov ecx, eax
sar ecx, 0x1f
mov edx, dword [esp + 0x7c]
mov ebx, edx
mov ebp, eax
mul edx
imul ecx, ebx
add ecx, edx
sar ebx, 0x1f
imul ebx, ebp
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x19c]
mov dword [edi + 0x2c], ebp
mov dword [edi + 0x30], ebp
mov edx, dword [0x7b12d0]
add ecx, ebx
test edx, edx
je 0x5449b5
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov ebx, dword [edx + 0x28]
mov dword [edi + 4], ebx
mov edi, edx
mov dword [edi + 0x28], esi
lea edx, [0x66e154]
mov dword [esp], edx
mov ebx, dword [esp + 0x178]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x70]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x14], ecx
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x544a19
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x190], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x80], edx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x84], ebx
xor eax, eax
jmp 0x544d67
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0xd
lea ecx, [0x620b16]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed860]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x544aa5
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0xd
lea ecx, [0x620b09]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed860]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x544b36
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov dword [esp + 0x108], eax
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x16
lea ecx, [0x624ff8]
mov dword [eax + 8], ecx
lea ecx, [0x5f57c0]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x108]
movzx ecx, cl
lea edx, [0x77dc60]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x14], ecx
mov dword [esp + 0x218], 0
lea ecx, [0x66e2c0]
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x13
lea ecx, [0x623597]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x19c]
movzx ecx, byte [ecx + 2]
lea edx, [0x5f57c0]
mov dword [eax + 0x10], edx
lea edx, [0x77dc60]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x14], ecx
mov dword [esp + 0x218], 0
lea ecx, [0x66e2c0]
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x19
lea ecx, [0x6269d8]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x19c]
movzx ecx, byte [ecx + 1]
lea edx, [0x5f55e0]
mov dword [eax + 0x10], edx
lea edx, [0x77dc60]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x14], ecx
mov dword [esp + 0x218], 0
lea ecx, [0x66e2c0]
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x11
lea ecx, [0x6226e9]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x19c]
movzx ecx, byte [ecx]
lea edx, [0x5f5520]
mov dword [eax + 0x10], edx
lea edx, [0x77dc60]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x14], ecx
mov dword [esp + 0x218], 0
lea ecx, [0x66e2c0]
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
mov dword [edi + ebp*4], ebx
lea eax, [ebp + 1]
mov ecx, dword [esp + 0x190]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x78]
cmp eax, ebp
jge 0x545a49
mov dword [esp + 0xa0], eax
lea eax, [0x606f80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x19c]
movzx ecx, byte [eax]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x7c]
mov ebp, edx
imul edx, ebx
mov dword [esp + 0x8c], edx
mov esi, dword [esp + 4]
mov dword [esp + 0x194], esi
cmp cl, 1
jne 0x54527a
mov ecx, dword [esp + 0x80]
cmp ecx, edx
jb 0x547be4
mov eax, dword [esp + 0xa4]
mov ebx, dword [eax + 0x20]
lea ebp, [0x7b1020]
mov dword [esp], ebp
mov esi, dword [esp + 0x84]
sub esi, edx
mov dword [esp + 0x104], esi
sub ecx, edx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edx
mov edi, dword [esp + 0x190]
add esi, edi
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bdb
mov dword [esp + 0x108], edx
mov edx, dword [esp + 0xa4]
mov ebp, dword [edx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x84]
sub edi, eax
mov dword [esp + 0xf0], edi
sub ebx, eax
mov dword [esp + 0xec], ebx
add edi, 0xffffffe8
mov dword [esp + 0x104], edi
add ebx, 0xffffffe8
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ecx, edi
mov edi, dword [esp + 0x190]
add ecx, edi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 4]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bd2
mov dword [esp + 0xfc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 4]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffffc
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 8]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bc9
mov dword [esp + 0xe8], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 8]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bc0
mov dword [esp + 0xe4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0xc]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x10]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bb7
mov dword [esp + 0xe0], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x10]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547bae
mov dword [esp + 0xdc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x14]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffec
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x1c]
mov edx, dword [esp + 0x80]
cmp edx, ecx
jb 0x547ba5
mov eax, dword [esp + 0x10]
mov dword [esp + 0xd8], eax
mov edx, dword [esp + 0xa4]
mov ebx, dword [edx + 0x20]
lea ebp, [0x7b1020]
mov dword [esp], ebp
mov esi, dword [esp + 0xf0]
add esi, 0xffffffe4
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x10]
mov dword [esp + 0xd4], eax
lea edi, [esp + 0x1c0]
xor eax, eax
call fcn.0046ffc2
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x1c0], ecx
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0x1c4], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], 0
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x1d8], ecx
mov dword [esp + 0x1dc], 0
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x1e0], ecx
mov dword [esp + 0x1e4], 0
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x1e8], ecx
mov dword [esp + 0x1ec], 0
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x1f0], ecx
mov dword [esp + 0x1f4], 0
mov edi, dword [esp + 0x194]
lea esi, [esp + 0x1c0]
call fcn.00470454
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x194]
jmp 0x545770
cmp cl, 2
jne 0x545770
mov ecx, dword [esp + 0x80]
cmp ecx, edx
jb 0x547b9e
mov eax, dword [esp + 0xa4]
mov ebx, dword [eax + 0x20]
lea ebp, [0x7b1020]
mov dword [esp], ebp
mov esi, dword [esp + 0x84]
sub esi, edx
mov dword [esp + 0x104], esi
sub ecx, edx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edx
mov edi, dword [esp + 0x190]
add esi, edi
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 4]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547b95
mov dword [esp + 0x108], edx
mov edx, dword [esp + 0xa4]
mov ebp, dword [edx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x84]
sub edi, eax
mov dword [esp + 0xf0], edi
sub ebx, eax
mov dword [esp + 0xec], ebx
add edi, 0xfffffffc
mov dword [esp + 0x104], edi
add ebx, 0xfffffffc
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ecx, edi
mov edi, dword [esp + 0x190]
add ecx, edi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 8]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
cmp ebx, ecx
jb 0x547b8c
mov dword [esp + 0xfc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 8]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x10]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x80]
cmp ebp, ecx
jb 0x547b83
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xe4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x10]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x80]
cmp ebp, ecx
jb 0x547b7a
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xdc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x18]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x20]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x80]
cmp ebp, ecx
jb 0x547b71
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xd4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x20]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x28]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x80]
cmp ebp, ecx
jb 0x547b68
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xcc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x28]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffd8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x190]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x30]
mov edx, dword [esp + 0x80]
cmp edx, ecx
jb 0x547b5f
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc8], eax
mov edx, dword [esp + 0x14]
mov dword [esp + 0xc4], edx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 0x24]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0xf0]
add edi, 0xffffffd0
mov dword [esp + 0x104], edi
mov esi, dword [esp + 0xec]
add esi, 0xffffffd0
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ecx, edi
mov edi, dword [esp + 0x190]
add ecx, edi
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x108]
mov dword [esp + 0x1c0], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0x1c4], edx
mov edx, dword [esp + 0xe4]
mov dword [esp + 0x1c8], edx
mov edx, dword [esp + 0xe8]
mov dword [esp + 0x1cc], edx
mov edx, dword [esp + 0xdc]
mov dword [esp + 0x1d0], edx
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x1d4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x1d8], edx
mov edx, dword [esp + 0xd8]
mov dword [esp + 0x1dc], edx
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x1e0], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x1e4], edx
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x1e8], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x1ec], edx
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x1f4], ecx
mov edi, dword [esp + 0x194]
lea esi, [esp + 0x1c0]
call fcn.00470454
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x194]
mov ecx, dword [esi + 0xc]
test ecx, ecx
jl 0x54599a
mov edi, dword [esi + 0x24]
test edi, edi
jl 0x5458eb
mov dword [esp + 0x108], edi
mov dword [esp + 0xfc], ecx
mov edx, dword [esi + 8]
mov dword [esp + 0xe8], edx
mov ebx, dword [esi + 0x20]
mov dword [esp + 0xe4], ebx
mov ebp, 0xffffffff
sub ebp, ebx
mov eax, 0x7fffffff
sbb eax, edi
cmp ecx, eax
sete al
xchg esi, ebx
setl bl
xchg esi, ebx
cmp ebp, edx
xchg ebp, ebx
setae bl
xchg ebp, ebx
and eax, ebp
or esi, eax
xchg esi, eax
test al, al
xchg esi, eax
je 0x5457db
add edx, ebx
adc ecx, edi
jmp 0x5457e5
mov ecx, 0x7fffffff
mov edx, 0xffffffff
mov dword [esp + 0x64], edx
mov dword [esp + 0x6c], ecx
lea eax, [0x609000]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x210]
mov dword [eax], ecx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x54581b
mov edx, dword [esp + 0x214]
jmp 0x545829
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x214]
mov dword [edi], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [eax + 8], ebx
mov ebp, dword [esp + 0xfc]
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebp
mov ebx, dword [esp + 0x64]
mov dword [eax + 0x18], ebx
mov ebx, dword [esp + 0x6c]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0xe4]
mov dword [eax + 0x20], ebx
mov ebx, dword [esp + 0x108]
mov dword [eax + 0x24], ebx
mov ebx, dword [0x7b12d0]
test ebx, ebx
jne 0x54587b
mov ebx, dword [esp + 0x194]
jmp 0x545895
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov ebx, dword [esp + 0x194]
mov ebp, dword [ebx + 0x40]
mov dword [edi + 4], ebp
mov ebp, dword [ebx + 0x3c]
mov dword [edi + 8], ebp
mov dword [ebx + 0x40], eax
lea ebp, [0x66e154]
mov dword [ebx + 0x38], ebp
mov dword [ebx + 0x3c], eax
mov esi, dword [esp + 0x19c]
mov eax, dword [esi + 0x2c]
mov ebp, dword [esp + 0xa0]
cmp ebp, eax
jae 0x547b56
mov eax, dword [0x7b12d0]
mov edi, dword [esi + 0x28]
test eax, eax
je 0x544d4c
mov eax, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov edx, dword [eax + ebp*4]
mov dword [edi + 4], edx
mov edx, dword [esp + 0x214]
mov edi, eax
jmp 0x544d4c
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x70]
add ecx, edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
adc ecx, 0
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x20
lea ecx, [0x629efd]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x194]
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed8a0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545971
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x70]
add ecx, edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
adc ecx, 0
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x1d
lea ecx, [0x628963]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x194]
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed8a0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545a20
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov ecx, dword [esp + 0x48]
test ecx, ecx
seta dl
mov ebx, dword [esp + 0x4c]
test ebx, ebx
xchg ebp, ebx
setg bl
xchg ebp, ebx
movzx esi, byte [esp + 0x2f]
and edx, esi
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x545e51
mov edx, dword [esp + 0x50]
test edx, edx
jne 0x545e39
mov edx, dword [esp + 0x178]
mov ebp, dword [edx + 8]
mov esi, dword [edx + 0xc]
nop
mov eax, ebp
add ebp, ecx
mov edi, esi
adc esi, ebx
cmp edi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
setg bl
cmp ebp, eax
setb al
and eax, edi
or ebx, eax
test bl, bl
jne 0x545ab3
mov dword [edx + 0x10], ebp
mov dword [edx + 0x14], esi
mov ebx, dword [esp + 0x19c]
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 1
xchg ebp, eax
je 0x545b82
xchg ebp, eax
cmp al, 2
xchg ebp, eax
je 0x545ada
xor eax, eax
xor ebp, ebp
xor esi, esi
jmp 0x545c05
lea edi, [esp + 0x10c]
xor eax, eax
call fcn.0046ffc0
lea ecx, [0x66e2d0]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 8], ecx
lea ebx, [0x7b1020]
mov dword [esp + 0xc], ebx
lea ebp, [0x5e1600]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0x10c]
mov dword [esp + 0x14], ebp
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x545b5e
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x134]
mov ebx, dword [esp + 0x19c]
mov ebp, eax
mov esi, edx
mov edx, dword [esp + 0x178]
mov eax, ecx
mov ecx, dword [esp + 0x48]
jmp 0x545c05
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
lea edi, [esp + 0x14c]
xor eax, eax
call fcn.0046ffc6
lea ecx, [0x66e2d0]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 8], ecx
lea ebx, [0x7b1020]
mov dword [esp + 0xc], ebx
lea ebp, [0x5e15c0]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0x14c]
mov dword [esp + 0x14], ebp
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x545e15
mov eax, dword [esp + 0x160]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x164]
mov ebx, dword [esp + 0x19c]
mov ebp, eax
mov esi, edx
mov edx, dword [esp + 0x178]
mov eax, ecx
mov ecx, dword [esp + 0x48]
test eax, eax
jne 0x545d7b
cmp ebp, 0xff00
jl 0x545cdb
mov eax, dword [esp + 0x44]
cmp eax, 0xffff
jne 0x545cd4
cmp esi, 0xff00
jge 0x545e67
mov dword [esp + 0xc0], esi
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x48]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x29
lea ecx, [0x62d45e]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545cab
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov esi, eax
jmp 0x545e67
mov dword [esp + 0xbc], ebp
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x48]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x26
lea ecx, [0x62c45d]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545d52
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov dword [esp + 0x38], eax
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x48]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x23
lea ecx, [0x62b3ab]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5f5700]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545dec
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x220], eax
add esp, 0x20c
ret
mov edx, dword [esp + 0x178]
mov ebx, dword [esp + 0x19c]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x44]
jmp 0x545e67
mov edx, dword [esp + 0x178]
mov ebx, dword [esp + 0x19c]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x44]
test ebp, ebp
jle 0x545f08
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x34]
cmp eax, edi
jge 0x545f0c
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x15
lea ecx, [0x62474a]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x545edf
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov eax, dword [esp + 0x54]
mov dword [esp + 0x50], ebp
mov dword [esp + 0x44], esi
mov edi, ebp
sar ebp, 0x1f
mov dword [esp + 0xb8], ebp
test ebp, ebp
jge 0x545f40
mov dword [esp + 0xb0], eax
mov eax, 0xffffffff
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xb0]
jmp 0x54606f
mov dword [esp], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 0x60
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xb8]
cmp eax, ecx
sete al
setb dl
mov ebx, dword [esp + 0x50]
cmp dword [esp + 0x10], ebx
xchg ebp, ebx
setb bl
xchg ebp, ebx
and eax, ebp
or edx, eax
test dl, dl
je 0x545fc5
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x178]
mov ebx, dword [esp + 0x19c]
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x50]
mov eax, 0xffffffff
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x54]
jmp 0x54606f
mov eax, 0x60
mul ebx
lea ebp, [ecx + ecx*2]
shl ebp, 5
add edx, ebp
test edx, edx
seta dl
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp eax, 0xa00000
xchg esi, ebx
seta bl
xchg esi, ebx
and esi, ebp
or edx, esi
test dl, dl
jne 0x545ff8
mov eax, ebx
jmp 0x546046
mov dword [esp], 0xa00000
mov dword [esp + 4], 0
mov dword [esp + 8], 0x60
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test eax, eax
sete dl
test ecx, ecx
sete cl
and edx, ecx
test dl, dl
je 0x546039
mov eax, 1
mov ecx, dword [esp + 0xb8]
mov ebx, eax
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x178]
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x50]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x19c]
mov esi, dword [esp + 0x30]
test esi, esi
jge 0x546104
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov dword [eax + 0xc], 0x11
lea ecx, [0x6226fa]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5460db
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x600460]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], esi
call sym.runtime.makeslice
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov ebx, eax
mul ecx
mov dword [esp + 0x108], eax
mov ebp, dword [esp + 0xb8]
imul ebp, ebx
add edx, ebp
sar ebx, 0x1f
imul ebx, ecx
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x19c]
mov dword [edi + 0x20], 0
mov ebp, dword [esp + 0x30]
mov dword [edi + 0x24], ebp
mov ecx, dword [0x7b12d0]
add edx, ebx
mov dword [esp + 0xfc], edx
test ecx, ecx
je 0x546180
mov ecx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov ebx, dword [ecx + 0x1c]
mov dword [edi + 4], ebx
mov edi, ecx
mov dword [edi + 0x1c], esi
lea eax, [0x5ed820]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ebp
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b8], eax
lea ecx, [0x66e154]
mov dword [esp], ecx
mov edx, dword [esp + 0x178]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x108]
mov dword [esp + 8], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x10], edx
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0x14], ebx
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x54621b
mov edx, dword [esp + 0x18]
mov dword [esp + 0x184], edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x58], ebx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x5c], ebp
xor eax, eax
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x1b8]
xor edi, edi
jmp 0x54626f
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
mov dword [eax + edi*4 - 4], ebx
mov eax, dword [esp + 0x9c]
inc eax
mov edx, dword [esp + 0x184]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x5c]
mov ecx, dword [esp + 0x94]
mov esi, dword [esp + 0x198]
mov edi, dword [esp + 0x90]
mov dword [esp + 0x90], edi
mov dword [esp + 0x198], esi
mov esi, dword [esp + 0x50]
cmp eax, esi
jge 0x54768c
mov dword [esp + 0x94], ecx
mov dword [esp + 0x9c], eax
lea eax, [0x60c6a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x19c]
movzx ecx, byte [eax]
mov edx, dword [esp + 0x9c]
mov ebx, dword [esp + 0x54]
mov ebp, edx
imul edx, ebx
mov dword [esp + 0x88], edx
mov esi, dword [esp + 4]
mov dword [esp + 0x18c], esi
cmp cl, 1
jne 0x54692b
mov ecx, dword [esp + 0x58]
cmp ecx, edx
jb 0x547b4f
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x104], eax
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x5c]
sub edi, edx
mov dword [esp + 0x100], edi
sub ecx, edx
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
mov esi, dword [esp + 0x184]
add edi, esi
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x104]
cmp ecx, edx
jb 0x54635f
mov esi, dword [esp + 0x198]
jmp 0x5463a4
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x198]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5ed820]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, eax
mov eax, dword [esp + 0x108]
mov dword [esi + edx*4 - 4], eax
mov ebx, dword [esp + 0x88]
lea eax, [ebx + 4]
mov ebp, dword [esp + 0x58]
cmp ebp, eax
jb 0x547b48
mov dword [esp + 0x198], esi
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0xa4]
mov edx, dword [ecx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x5c]
sub edi, ebx
mov dword [esp + 0xf0], edi
sub ebp, ebx
mov dword [esp + 0xec], ebp
add edi, 0xfffffffc
mov dword [esp + 0x104], edi
add ebp, 0xfffffffc
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
mov edi, dword [esp + 0x184]
add eax, edi
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov eax, dword [esp + 0x104]
mov dword [esp + 0xc], eax
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 8]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b3f
mov dword [esp + 0x108], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 8]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b36
mov dword [esp + 0xfc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0xc]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x10]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b2d
mov dword [esp + 0xe8], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x10]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b24
mov dword [esp + 0xe4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x14]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffec
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b1b
mov dword [esp + 0xe0], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x18]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x1c]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b12
mov dword [esp + 0xdc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x1c]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x20]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547b09
mov dword [esp + 0xd8], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x20]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x24]
mov edx, dword [esp + 0x58]
cmp edx, ecx
jb 0x547b00
mov eax, dword [esp + 0x10]
mov dword [esp + 0xd4], eax
mov edx, dword [esp + 0xa4]
mov ebx, dword [edx + 0x20]
lea ebp, [0x7b1020]
mov dword [esp], ebp
mov esi, dword [esp + 0xf0]
add esi, 0xffffffdc
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffdc
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x10]
mov dword [esp + 0xd0], eax
lea edi, [esp + 0x1c0]
xor eax, eax
call fcn.0046ffbe
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0x1cc], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x1d0], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x1d8], ecx
mov dword [esp + 0x1dc], 0
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x200], ecx
mov dword [esp + 0x204], 0
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x1e8], ecx
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x1ec], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x1f0], ecx
mov dword [esp + 0x1f4], 0
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x1f8], ecx
mov dword [esp + 0x1fc], 0
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5468e5
lea eax, [0x610f40]
mov dword [esp], eax
mov eax, dword [esp + 0x18c]
mov dword [esp + 4], eax
lea ecx, [esp + 0x1c0]
mov dword [esp + 8], ecx
call sym.runtime.wbMove
xor eax, eax
mov edi, dword [esp + 0x18c]
lea esi, [esp + 0x1c0]
call fcn.0047042c
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x9c]
mov esi, dword [esp + 0x18c]
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x90]
jmp 0x546fd5
cmp cl, 2
jne 0x546fc7
mov ecx, dword [esp + 0x58]
cmp ecx, edx
jb 0x547af9
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x104], eax
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x5c]
sub edi, edx
mov dword [esp + 0x100], edi
sub ecx, edx
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
mov esi, dword [esp + 0x184]
add edi, esi
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x104]
cmp ecx, edx
jb 0x5469b9
mov esi, dword [esp + 0x198]
jmp 0x5469fe
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x198]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5ed820]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, eax
mov eax, dword [esp + 0x108]
mov dword [esi + edx*4 - 4], eax
mov ebx, dword [esp + 0x88]
lea eax, [ebx + 4]
mov ebp, dword [esp + 0x58]
cmp ebp, eax
jb 0x547af2
mov dword [esp + 0x198], esi
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0xa4]
mov edx, dword [ecx + 0x20]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0x5c]
sub edi, ebx
mov dword [esp + 0xf0], edi
sub ebp, ebx
mov dword [esp + 0xec], ebp
add edi, 0xfffffffc
mov dword [esp + 0x104], edi
add ebp, 0xfffffffc
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
mov edi, dword [esp + 0x184]
add eax, edi
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov eax, dword [esp + 0x104]
mov dword [esp + 0xc], eax
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 8]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547ae9
mov dword [esp + 0x108], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 8]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547ae0
mov dword [esp + 0xfc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x18]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x20]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x58]
cmp ebp, ecx
jb 0x547ad7
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xe4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x20]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffe0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x10]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x58]
cmp ebp, ecx
jb 0x547ace
mov dword [esp + 0xe0], edx
mov dword [esp + 0xdc], ebx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x10]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xfffffff0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x28]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x58]
cmp ebp, ecx
jb 0x547ac5
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xd4], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x28]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffd8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x2c]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547abc
mov dword [esp + 0xd0], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x2c]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffd4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x30]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
cmp ebx, ecx
jb 0x547ab3
mov dword [esp + 0xcc], edx
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf0]
lea esi, [ebp - 0x30]
mov dword [esp + 0x104], esi
mov edi, dword [esp + 0xec]
add edi, 0xffffffd0
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ecx, esi
mov esi, dword [esp + 0x184]
add ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x88]
lea ecx, [eax + 0x38]
mov edx, dword [esp + 0x58]
cmp edx, ecx
jb 0x547aaa
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc8], eax
mov edx, dword [esp + 0x14]
mov dword [esp + 0xc4], edx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 0x24]
lea esi, [0x7b1020]
mov dword [esp], esi
mov edi, dword [esp + 0xf0]
add edi, 0xffffffc8
mov dword [esp + 0x104], edi
mov esi, dword [esp + 0xec]
add esi, 0xffffffc8
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ecx, edi
mov edi, dword [esp + 0x184]
add ecx, edi
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xc], ecx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xc0], ecx
lea edi, [esp + 0x1c0]
mov edx, eax
xor eax, eax
call fcn.0046ffbe
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0x1cc], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x1d8], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x1dc], ecx
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x200], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x204], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x1d0], ecx
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x1d4], ecx
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x1e8], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x1ec], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x1f0], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x1f4], ecx
mov dword [esp + 0x1f8], edx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x1fc], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x546f84
lea eax, [0x610f40]
mov dword [esp], eax
mov eax, dword [esp + 0x18c]
mov dword [esp + 4], eax
lea ecx, [esp + 0x1c0]
mov dword [esp + 8], ecx
call sym.runtime.wbMove
xor eax, eax
mov edi, dword [esp + 0x18c]
lea esi, [esp + 0x1c0]
call fcn.0047042c
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x9c]
mov esi, dword [esp + 0x18c]
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x90]
jmp 0x546fd5
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x90]
mov ebx, dword [esi + 0x1c]
test ebx, ebx
jl 0x5475dd
mov dword [esp + 0x94], ecx
mov ecx, dword [esi + 0x44]
test ecx, ecx
jl 0x54752e
mov dword [esp + 0x90], edi
mov dword [esp + 0x108], ecx
mov dword [esp + 0xfc], ebx
mov edx, dword [esi + 0x18]
mov dword [esp + 0xe8], edx
mov edi, dword [esi + 0x40]
mov dword [esp + 0xe4], edi
mov ebp, 0xffffffff
sub ebp, edi
mov eax, 0x7fffffff
sbb eax, ecx
cmp ebx, eax
setl al
xchg esi, ebx
sete bl
xchg esi, ebx
cmp ebp, edx
xchg ebp, ebx
setae bl
xchg ebp, ebx
and ebp, esi
or ebp, eax
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x54704e
add edx, edi
adc ebx, ecx
jmp 0x547058
mov ebx, 0x7fffffff
mov edx, 0xffffffff
mov dword [esp + 0x60], edx
mov dword [esp + 0x68], ebx
lea eax, [0x609000]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x210]
mov dword [eax], ecx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x54708e
mov edx, dword [esp + 0x214]
jmp 0x54709c
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x214]
mov dword [edi], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [eax + 8], ebx
mov ebp, dword [esp + 0xfc]
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebp
mov ebx, dword [esp + 0x60]
mov dword [eax + 0x18], ebx
mov ebx, dword [esp + 0x68]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0xe4]
mov dword [eax + 0x20], ebx
mov ebx, dword [esp + 0x108]
mov dword [eax + 0x24], ebx
mov ebx, dword [0x7b12d0]
test ebx, ebx
jne 0x5470ee
mov ebx, dword [esp + 0x18c]
jmp 0x547102
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebx, dword [esp + 0x18c]
mov ebp, dword [ebx + 0x50]
mov dword [edi + 4], ebp
mov dword [ebx + 0x50], eax
mov ebp, dword [ebx + 0xc]
test ebp, 0x800
jne 0x54714b
lea ebp, [0x66e154]
mov dword [ebx + 0x48], ebp
mov esi, dword [0x7b12d0]
test esi, esi
je 0x547130
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov esi, dword [ebx + 0x4c]
mov dword [edi + 4], esi
mov dword [ebx + 0x4c], eax
mov esi, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x24], edi
mov ebp, dword [esp + 0x19c]
jmp 0x547437
mov ebp, dword [esp + 0x19c]
movzx esi, byte [ebp]
xchg esi, eax
cmp al, 1
xchg esi, eax
je 0x5472d4
xchg esi, eax
cmp al, 2
xchg esi, eax
jne 0x547437
lea eax, [0x5ed720]
mov dword [esp], eax
mov dword [esp + 4], 0x18
mov dword [esp + 8], 0x18
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b8], eax
mov ecx, dword [esp + 0x18c]
mov edx, dword [ecx + 0x50]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], 0x18
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call sym.io._SectionReader_.ReadAt
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x5474e6
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x20]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], 0x18
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18c]
mov dword [ecx + 0x54], eax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 8]
mov dword [esp + 4], esi
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18c]
mov dword [edx + 0x20], eax
mov dword [edx + 0x24], ecx
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x24]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
add ebp, 0x10
mov dword [esp + 4], ebp
mov dword [esp + 8], 8
mov dword [esp + 0xc], 8
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18c]
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
mov dword [edx + 0x58], 0x18
mov dword [edx + 0x5c], 0
mov ecx, dword [esp + 0x210]
mov edx, dword [esp + 0x214]
mov ebx, dword [esp + 0x18c]
mov ebp, dword [esp + 0x19c]
jmp 0x547437
lea eax, [0x5ed720]
mov dword [esp], eax
mov dword [esp + 4], 0xc
mov dword [esp + 8], 0xc
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b8], eax
mov ecx, dword [esp + 0x18c]
mov edx, dword [ecx + 0x50]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0xc
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call sym.io._SectionReader_.ReadAt
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x54750a
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x20]
lea edx, [0x7b1020]
mov dword [esp], edx
mov ebx, dword [esp + 0x1b8]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0xc
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18c]
mov dword [ecx + 0x54], eax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
lea esi, [ebp + 4]
mov dword [esp + 4], esi
mov dword [esp + 8], 8
mov dword [esp + 0xc], 8
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18c]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], 0
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 0x20]
lea ebx, [0x7b1020]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1b8]
add ebp, 8
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18c]
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x34], 0
mov dword [ecx + 0x58], 0xc
mov dword [ecx + 0x5c], 0
mov ecx, dword [esp + 0x210]
mov edx, dword [esp + 0x214]
mov ebx, dword [esp + 0x18c]
mov ebp, dword [esp + 0x19c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 0x20]
inc edi
mov eax, dword [ebp + 0x1c]
cmp esi, edi
jae 0x5474b7
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x600460]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x19c]
mov dword [ebx + 0x24], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x547494
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x1c]
mov dword [edi + 4], ebp
mov dword [ebx + 0x1c], ecx
mov ebx, dword [esp + 0x18c]
mov ebp, dword [esp + 0x19c]
mov edi, edx
mov eax, ecx
mov ecx, dword [esp + 0x210]
mov edx, dword [esp + 0x214]
mov dword [ebp + 0x20], edi
mov esi, dword [0x7b12d0]
test esi, esi
je 0x54623f
mov esi, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov edx, dword [eax + esi*4 - 4]
mov dword [edi + 4], edx
mov edx, dword [esp + 0x214]
mov edi, esi
jmp 0x54623f
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x48]
add ecx, edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
adc ecx, 0
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x14
lea ecx, [0x623e8c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x18c]
mov edx, dword [ecx + 0x40]
mov ecx, dword [ecx + 0x44]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed860]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5475b4
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x48]
add ecx, edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
adc ecx, 0
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x16
lea ecx, [0x62500e]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x18c]
mov edx, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5ed860]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x547663
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov edx, dword [esp + 0x19c]
mov ecx, dword [edx + 0x20]
test ecx, ecx
je 0x54782a
mov eax, dword [esp + 0x44]
test eax, eax
je 0x547806
cmp eax, ecx
jae 0x547aa5
mov ecx, dword [edx + 0x1c]
mov ecx, dword [ecx + eax*4]
cmp dword [ecx + 8], 3
je 0x547779
mov dword [esp + 0x180], ecx
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x44]
imul ecx, edx
mov edx, ecx
sar ecx, 0x1f
mov ebx, dword [esp + 0x48]
add edx, ebx
mov dword [eax], edx
mov edx, dword [esp + 0x4c]
adc ecx, edx
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x2a
lea ecx, [0x62d88d]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x180]
mov ecx, dword [ecx + 8]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5f5700]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x547750
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov dword [esp], ecx
call sym.debug_elf._Section_.Data
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x5477e2
mov edx, dword [esp + 4]
mov dword [esp + 0x17c], edx
mov ebx, dword [esp + 8]
mov dword [esp + 0x3c], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x40], ebp
mov esi, dword [esp + 0x19c]
mov edi, dword [esi + 0x1c]
mov dword [esp + 0x1a0], edi
mov eax, dword [esi + 0x20]
mov dword [esp + 0x104], eax
mov ecx, dword [esp + 0x198]
mov dword [esp + 0xa8], eax
xor eax, eax
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa8]
jmp 0x547881
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x218], 0
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
add esp, 0x20c
ret
mov dword [esp + 0x218], edx
mov dword [esp + 0x21c], 0
mov dword [esp + 0x220], 0
add esp, 0x20c
ret
mov dword [esp + 0x218], edx
mov dword [esp + 0x21c], 0
mov dword [esp + 0x220], 0
add esp, 0x20c
ret
lea edx, [ebp + 1]
mov ebp, dword [esp + 0x198]
mov esi, dword [esp + 0x1a0]
mov ecx, ebp
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x19c]
mov edi, dword [esp + 0x1a0]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0x17c]
mov ebp, dword [esp + 0x98]
cmp ebp, eax
jge 0x5479a6
mov esi, dword [edi + ebp*4]
mov edi, dword [esp + 0x90]
cmp edi, ebp
jbe 0x547a9c
mov ecx, dword [ecx + ebp*4]
test ecx, ecx
jl 0x5478ad
cmp ecx, ebx
jl 0x5478c5
xor ecx, ecx
xor ecx, ecx
mov byte [esp + 0x2e], cl
xor ecx, ecx
mov dword [esp + 0x174], ecx
xor ecx, ecx
jmp 0x54795f
mov dword [esp + 0x108], ecx
jmp 0x5479d2
mov dword [esp + 0x188], esi
mov dword [esp], 0
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x108]
sub eax, ebx
neg eax
sar eax, 0x1f
and eax, ebx
add eax, edx
mov dword [esp + 4], eax
sub ecx, ebx
mov dword [esp + 8], ecx
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x17c]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0x188]
mov edi, dword [esp + 0x90]
mov edx, 1
mov byte [esp + 0x2e], dl
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0x104]
mov edx, dword [esp + 0x17c]
jmp 0x54795f
xor ecx, ecx
xor ecx, ecx
mov byte [esp + 0x2e], cl
xor ecx, ecx
mov dword [esp + 0x174], ecx
xor ecx, ecx
mov dword [esi + 4], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x54798e
mov ecx, edi
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0x174]
mov dword [edi], edx
mov ebx, dword [esi]
mov dword [edi + 4], ebx
mov edx, dword [esp + 0x17c]
mov ebx, dword [esp + 0x3c]
mov edi, ecx
mov edx, dword [esp + 0x174]
mov dword [esi], edx
movzx edx, byte [esp + 0x2e]
test dl, dl
jne 0x54784e
jmp 0x5479e9
mov dword [esp + 0x218], esi
mov dword [esp + 0x21c], 0
mov dword [esp + 0x220], 0
add esp, 0x20c
ret
inc ecx
mov edi, dword [esp + 0x90]
cmp ecx, ebx
jge 0x54794c
movzx edi, byte [edx + ecx]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x5479ca
jmp 0x5478d1
lea eax, [0x6002e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x1bc], eax
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x54]
imul edx, ecx
mov ebx, edx
sar edx, 0x1f
mov ebp, dword [esp + 0x48]
add ebx, ebp
mov dword [eax], ebx
mov ebx, dword [esp + 0x4c]
adc ebx, edx
mov dword [eax + 4], ebx
mov dword [eax + 0xc], 0x16
lea edx, [0x625024]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x198]
mov ecx, dword [edx + ecx*4]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed820]
mov edx, dword [esp + 0x1bc]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x547a73
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov dword [esp + 0x218], 0
lea eax, [0x66e2c0]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], edx
add esp, 0x20c
ret
mov eax, ebp
mov ecx, edi
call sym.runtime.panicIndex
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov ecx, eax
mov eax, ebp
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, edx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
nop
call sym.runtime.morestack_noctxt
jmp sym.debug_elf.NewFile