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

Disassembly:
mov ecx, dword [0x776294]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x20c]
cmp eax, dword [ecx + 8]
jbe 0x54bde5
sub esp, 0x28c
nop
lea eax, [0x5dab40]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x290]
mov dword [eax], ecx
mov edx, dword [0x776350]
test edx, edx
jne 0x549e40
mov edx, dword [esp + 0x294]
jmp 0x549e4e
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x294]
mov dword [edi], edx
mov dword [esp + 0x1e4], 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
mov word [esp + 0x36], 0
lea ecx, [0x634c48]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9e40]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x36]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x54a63d
movzx eax, word [esp + 0x36]
cmp ax, 0x1df
je 0x549f89
cmp ax, 0x1f7
je 0x549f89
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], 0
movzx eax, word [esp + 0x36]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x5c2c40]
mov dword [esp + 0x284], ecx
mov dword [esp + 0x288], eax
lea eax, [0x5f6bc7]
mov dword [esp], eax
mov dword [esp + 4], 0x1e
lea eax, [esp + 0x284]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
lea eax, [0x5dd2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
movzx ecx, word [esp + 0x36]
mov word [eax], cx
mov ecx, dword [esp + 0x1e4]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 0xc]
mov dword [ecx + 0x10], edx
mov dword [ecx + 0x14], ebx
xor edx, edx
test edx, edx
jne 0x54a615
mov dword [esp + 0x200], eax
movzx edx, word [eax]
cmp dx, 0x1df
je 0x54a0ad
cmp dx, 0x1f7
je 0x549ff4
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor edx, edx
mov word [esp + 0x34], dx
xor edx, edx
jmp 0x54a13c
lea edi, [esp + 0x1b0]
xor eax, eax
call fcn.0046ab9a
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9300]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x1b0]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54a089
movzx ecx, word [esp + 0x1b2]
mov edx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x1bc]
mov ebp, dword [esp + 0x1c4]
movzx esi, word [esp + 0x1c0]
mov edi, esi
mov word [esp + 0x34], cx
mov ecx, dword [esp + 0x1e4]
mov esi, 0x18
jmp 0x54a13c
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
lea edi, [esp + 0x1c8]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b92c0]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x1c8]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54a5f1
movzx ecx, word [esp + 0x1ca]
mov edx, dword [esp + 0x1d0]
mov ebp, dword [esp + 0x1d4]
movzx esi, word [esp + 0x1d8]
xor ebx, ebx
mov edi, esi
mov word [esp + 0x34], cx
mov ecx, dword [esp + 0x1e4]
mov esi, 0x14
mov word [esp + 0x32], di
test edx, edx
sete al
test ebx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, eax
xchg edi, eax
test al, al
xchg edi, eax
jne 0x54a15b
test ebp, ebp
ja 0x54a1b1
lea eax, [0x5f08fc]
mov dword [esp], eax
mov dword [esp + 4], 0xf
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov dword [esp + 0x40], ebx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x64], ebp
mov eax, 0x12
mov edi, edx
mul ebp
mov ebp, dword [ecx + 8]
mov esi, dword [ecx + 0xc]
add eax, edi
mov dword [esp + 0x5c], eax
adc edx, ebx
mov dword [esp + 0xa8], edx
add eax, ebp
adc edx, esi
cmp esi, edx
xchg esi, ebx
sete bl
xchg esi, ebx
setg bl
cmp eax, ebp
xchg ebp, ebx
setb bl
xchg ebp, ebx
and esi, ebp
or ebx, esi
test bl, bl
je 0x54a20a
mov eax, dword [0x72fb08]
mov edx, dword [0x72fb0c]
jmp 0x54a214
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
xor eax, eax
xor edx, edx
test eax, eax
jne 0x54a5d1
mov dword [esp + 0xa4], edi
mov dword [esp + 0x6c], 0
lea eax, [0x634c48]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x63620c]
mov dword [esp + 8], edx
lea ebx, [0x776160]
mov dword [esp + 0xc], ebx
lea ebp, [0x5b9ec0]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0x6c]
mov dword [esp + 0x14], ebp
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x54a5ad
mov eax, dword [esp + 0x6c]
cmp eax, 4
ja 0x54a281
mov ebx, dword [esp + 0x200]
jmp 0x54a2f8
lea ecx, [0x634aa4]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x14], eax
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x54a589
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x200]
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], ecx
mov eax, dword [0x776350]
test eax, eax
je 0x54a2f5
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov eax, dword [ebx + 0x1c]
mov dword [edi + 4], eax
mov dword [ebx + 0x1c], edx
mov eax, dword [esp + 0x7c]
mov ecx, eax
sar eax, 0x1f
movzx edx, word [esp + 0x32]
movzx edx, dx
mov ebp, dword [esp + 0x1e4]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
add ecx, edx
adc eax, 0
add ecx, esi
adc eax, edi
cmp edi, eax
sete dl
xchg edi, ebx
setg bl
xchg edi, ebx
cmp ecx, esi
xchg esi, ebx
setb bl
xchg esi, ebx
and edx, esi
or edi, edx
xchg edi, eax
test al, al
xchg edi, eax
je 0x54a34c
mov eax, dword [0x72fb08]
mov ecx, dword [0x72fb0c]
jmp 0x54a356
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], eax
xor eax, eax
xor ecx, ecx
test eax, eax
jne 0x54a569
xor eax, eax
test al, al
je 0x54a36b
movzx ecx, word [esp + 0x34]
jmp 0x54a395
movzx ecx, word [esp + 0x34]
movzx edx, cx
movzx esi, cx
mov edi, esi
sar esi, 0x1f
cmp edi, edx
xchg edi, ebx
setne bl
xchg edi, ebx
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x54a39f
mov edx, 0xffffffff
jmp 0x54a47d
mov dword [esp + 0x84], edx
mov dword [esp], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 4
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x84]
cmp dword [esp + 0x10], ecx
setb dl
test eax, eax
sete al
and edx, eax
test dl, dl
je 0x54a403
xor eax, eax
movzx ecx, word [esp + 0x34]
mov ebx, dword [esp + 0x200]
mov ebp, dword [esp + 0x1e4]
mov edx, 0xffffffff
jmp 0x54a47d
mov eax, ecx
shr ecx, 0x1e
mov edx, eax
shl eax, 2
test ecx, ecx
seta cl
sete bl
cmp eax, 0xa00000
seta al
and eax, ebx
or eax, ecx
test al, al
je 0x54a468
mov dword [esp], 0xa00000
mov dword [esp + 4], 0
mov dword [esp + 8], 4
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 ecx, edx
test cl, cl
je 0x54a466
mov eax, 1
mov edx, eax
xor eax, eax
movzx ecx, word [esp + 0x34]
mov ebx, dword [esp + 0x200]
mov ebp, dword [esp + 0x1e4]
test edx, edx
jl 0x54a4d9
mov dword [esp + 0x38], edx
lea eax, [0x5cade0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], edx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x200]
mov dword [ecx + 8], 0
mov edx, dword [esp + 0x38]
mov dword [ecx + 0xc], edx
mov edx, dword [0x776350]
test edx, edx
je 0x54a4cf
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [ecx + 4]
mov dword [edi + 4], edx
mov dword [ecx + 4], eax
xor eax, eax
jmp 0x54a66e
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], 0
mov word [esp], cx
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x5c2c40]
mov dword [esp + 0x284], ecx
mov dword [esp + 0x288], eax
lea eax, [0x5f5f89]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
lea eax, [esp + 0x284]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], edx
add esp, 0x28c
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
add esp, 0x28c
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov dword [eax + esi*4 - 4], ecx
mov ebp, dword [esp + 0x78]
lea eax, [ebp + 1]
mov ecx, ebx
movzx edx, word [esp + 0x34]
movzx ebx, dx
cmp eax, ebx
jge 0x54aa54
mov dword [esp + 0x78], eax
lea eax, [0x5db540]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x200]
movzx ecx, word [eax]
mov edx, dword [esp + 4]
mov dword [esp + 0x1e8], edx
cmp cx, 0x1df
je 0x54a71f
cmp cx, 0x1f7
je 0x54a6bc
xor ecx, ecx
xor ebx, ebx
jmp 0x54a828
lea edi, [esp + 0x140]
xor eax, eax
call fcn.0046ab8e
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9500]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x140]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54aa0c
xor eax, eax
jmp 0x54bd0f
lea edi, [esp + 0x188]
xor eax, eax
call fcn.0046ab96
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b94c0]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x188]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54aa30
xor eax, eax
jmp 0x54bce8
cmp eax, 8
ja 0x54bd02
mov dword [esp], 0
lea ecx, [esp + 0x188]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x1e8]
mov dword [edx + 4], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54a7ce
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ecx
mov eax, dword [esp + 0x194]
mov dword [edx + 8], eax
mov dword [edx + 0xc], 0
mov eax, dword [esp + 0x198]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], 0
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x19c]
mov dword [edx + 0x18], eax
mov eax, dword [esp + 0x1a0]
mov dword [edx + 0x1c], eax
mov dword [edx + 0x20], 0
movzx eax, word [esp + 0x1a8]
mov dword [edx + 0x24], eax
mov eax, dword [esp + 0x200]
xor ebx, ebx
test ecx, ecx
xchg ebp, ebx
sete bl
xchg ebp, ebx
test ebx, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x54a850
lea ebp, [0x776160]
lea esi, [0x634d38]
jmp 0x54a85e
mov ebp, dword [esp + 0x294]
mov esi, dword [esp + 0x290]
mov dword [esp + 0x1fc], ebp
mov dword [esp + 0x58], esi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ebx
mov edi, dword [edx + 0x10]
mov dword [esp + 0x68], edi
mov eax, dword [edx + 0x14]
mov dword [esp + 0x90], eax
mov edx, 0xffffffff
sub edx, edi
mov ebp, 0x7fffffff
sbb ebp, eax
cmp ebx, ebp
xchg ebp, ebx
setl bl
xchg ebp, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
cmp edx, ecx
setae dl
and edx, esi
or edx, ebp
test dl, dl
je 0x54a8b3
add edi, ecx
adc eax, ebx
jmp 0x54a8bd
mov eax, 0x7fffffff
mov edi, 0xffffffff
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], eax
lea ecx, [0x5dab40]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov ecx, dword [0x776350]
test ecx, ecx
jne 0x54a8f0
mov ecx, dword [esp + 0x1fc]
jmp 0x54a8fe
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x1fc]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x48]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x4c]
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 0x20], ecx
mov ecx, dword [esp + 0x90]
mov dword [eax + 0x24], ecx
mov ecx, dword [0x776350]
test ecx, ecx
jne 0x54a947
mov ecx, dword [esp + 0x1e8]
jmp 0x54a961
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov ecx, dword [esp + 0x1e8]
mov edx, dword [ecx + 0x3c]
mov dword [edi + 4], edx
mov edx, dword [ecx + 0x38]
mov dword [edi + 8], edx
mov dword [ecx + 0x3c], eax
lea edx, [0x634aa4]
mov dword [ecx + 0x34], edx
mov dword [ecx + 0x38], eax
mov ebx, dword [esp + 0x200]
mov ebp, dword [ebx + 0xc]
mov esi, dword [ebx + 8]
inc esi
mov eax, dword [ebx + 4]
cmp ebp, esi
jae 0x54a9e8
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x5cade0]
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 + 0x200]
mov dword [ebx + 0xc], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54a9d4
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 4]
mov dword [edi + 4], ebp
mov dword [ebx + 4], ecx
mov esi, edx
mov eax, ecx
mov ecx, dword [esp + 0x1e8]
lea edx, [0x634aa4]
mov dword [ebx + 8], esi
mov ebp, dword [0x776350]
test ebp, ebp
je 0x54a661
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [eax + esi*4 - 4]
mov dword [edi + 4], ebp
jmp 0x54a661
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov dword [esp + 0xa0], ebx
lea edi, [esp + 0x258]
xor eax, eax
call fcn.0046ab99
lea edi, [esp + 0x20c]
call fcn.0046ab8d
lea ecx, [esp + 0x20c]
mov dword [esp + 0x264], ecx
call sym.runtime.rand32
mov ecx, dword [esp]
mov dword [esp + 0x260], ecx
mov ecx, dword [esp + 0x1e4]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 0xc]
mov ebp, dword [esp + 0xa4]
add ebp, edx
mov esi, dword [esp + 0x40]
adc esi, ebx
cmp ebx, esi
setg bl
sete al
cmp ebp, edx
setb dl
and eax, edx
or ebx, eax
test bl, bl
je 0x54aad1
mov eax, dword [0x72fb08]
mov edx, dword [0x72fb0c]
jmp 0x54aadb
mov dword [ecx + 0x10], ebp
mov dword [ecx + 0x14], esi
xor eax, eax
xor edx, edx
test eax, eax
jne 0x54ab15
mov eax, dword [esp + 0x200]
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov edx, dword [0x776350]
test edx, edx
je 0x54ab08
mov edx, dword [eax + 0x10]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x776160]
mov dword [eax + 0x10], edx
xor edx, edx
jmp 0x54ab46
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], edx
add esp, 0x28c
ret
mov esi, dword [esp + 0x60]
lea edx, [ebx + esi + 1]
mov eax, dword [esp + 0x200]
mov ecx, ebp
mov ebx, dword [esp + 0x64]
cmp edx, ebx
jge 0x54aef1
mov dword [esp + 0x74], edx
lea eax, [0x5dd180]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x200]
movzx ecx, word [eax]
mov edx, dword [esp + 4]
mov dword [esp + 0x1dc], edx
cmp cx, 0x1df
je 0x54ac9b
cmp cx, 0x1f7
je 0x54ab94
xor ebp, ebp
xor ebx, ebx
jmp 0x54b651
lea edi, [esp + 0x118]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9580]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x118]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54aea9
movzx ebx, word [esp + 0x124]
movzx ebp, byte [esp + 0x129]
mov esi, dword [esp + 0x1dc]
mov dword [esi + 0x10], ebx
movzx ebx, byte [esp + 0x128]
mov dword [esi + 0x14], ebx
mov ebx, dword [esp + 0x118]
mov edi, dword [esp + 0x11c]
mov dword [esi + 8], ebx
mov dword [esi + 0xc], edi
movzx ebx, word [esp + 0x126]
test bx, 0x20
je 0x54ac40
cmp ebp, 1
setg bl
jmp 0x54ac42
xor ebx, ebx
mov eax, dword [esp + 0x120]
cmp eax, 4
jae 0x54ac57
mov edi, dword [esp + 0x200]
jmp 0x54ac65
mov edi, dword [esp + 0x200]
mov ecx, dword [edi + 0x20]
cmp ecx, eax
jg 0x54ac70
xor ecx, ecx
xor eax, eax
xor edx, edx
jmp 0x54bca3
jb 0x54bce2
mov edx, dword [edi + 0x1c]
mov edi, dword [edi + 0x24]
sub edi, eax
mov dword [esp + 0x88], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
add edi, edx
sub ecx, eax
xor eax, eax
jmp 0x54bc40
lea edi, [esp + 0x12c]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9540]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x12c]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54aecd
movzx ebx, word [esp + 0x138]
movzx ebp, byte [esp + 0x13d]
mov esi, dword [esp + 0x1dc]
mov dword [esi + 0x10], ebx
movzx ebx, byte [esp + 0x13c]
mov dword [esi + 0x14], ebx
mov ebx, dword [esp + 0x134]
mov dword [esi + 8], ebx
mov dword [esi + 0xc], 0
movzx ebx, word [esp + 0x13a]
test bx, 0x20
je 0x54ad44
cmp ebp, 1
setg bl
jmp 0x54ad46
xor ebx, ebx
mov byte [esp + 0x2f], bl
mov dword [esp + 0x9c], ebp
mov edi, dword [esp + 0x12c]
bswap edi
nop
test edi, edi
je 0x54ad66
xor eax, eax
jmp 0x54bbbc
mov eax, dword [esp + 0x130]
bswap eax
nop
cmp eax, 4
jae 0x54ad7e
mov edi, dword [esp + 0x200]
jmp 0x54ad8c
mov edi, dword [esp + 0x200]
mov ecx, dword [edi + 0x20]
cmp ecx, eax
jg 0x54ad94
xor ecx, ecx
xor eax, eax
xor edx, edx
jmp 0x54ae0b
jb 0x54bbb6
mov edx, dword [edi + 0x1c]
mov edi, dword [edi + 0x24]
sub edi, eax
mov dword [esp + 0x8c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
add edi, edx
sub ecx, eax
xor eax, eax
jmp 0x54b618
mov edx, dword [esp + 0x8c]
cmp eax, edx
ja 0x54bbaf
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x2f]
mov ebp, dword [esp + 0x9c]
mov esi, dword [esp + 0x1dc]
mov edi, dword [esp + 0x200]
mov edx, eax
mov eax, 1
mov dword [esi + 4], ecx
mov ecx, dword [0x776350]
test ecx, ecx
je 0x54ae2b
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ecx, dword [esi]
mov dword [edi + 4], ecx
mov edi, dword [esp + 0x200]
mov dword [esi], edx
test al, al
jne 0x54b64d
mov eax, dword [esp + 0x74]
mov dword [esp + 0x60], ebp
mov ecx, ebp
sar ebp, 0x1f
mov edx, eax
mov eax, 0x12
mov ebx, edx
mul ecx
lea ebp, [ebp + ebp*8]
lea edx, [edx + ebp*2]
mov ebp, dword [esp + 0x1e4]
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebp + 0xc]
add eax, esi
adc edi, edx
cmp ecx, edi
sete cl
setg dl
cmp dword [ebp + 8], eax
xchg esi, ebx
seta bl
xchg esi, ebx
and esi, ecx
or esi, edx
xchg esi, eax
test al, al
xchg esi, eax
je 0x54ae92
mov eax, dword [0x72fb08]
mov ecx, dword [0x72fb0c]
jmp 0x54ae9c
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x14], edi
xor eax, eax
xor ecx, ecx
test eax, eax
je 0x54ab35
jmp 0x54b62d
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov edx, dword [eax + 4]
mov dword [esp + 0x208], edx
mov ebx, dword [eax + 8]
mov dword [esp + 0xa0], ebx
xor ebp, ebp
jmp 0x54af0a
inc ebp
cmp ebp, ebx
jge 0x54b229
mov esi, dword [edx + ebp*4]
mov edi, dword [esi + 0x18]
cmp edi, 0x20
je 0x54af22
cmp edi, 0x40
jne 0x54af09
mov edi, dword [esi + 0x1c]
mov ecx, dword [esi + 0x20]
test edi, edi
xchg edi, ebx
sete bl
xchg edi, ebx
test ecx, ecx
sete cl
and ecx, edi
test cl, cl
je 0x54af45
mov ecx, dword [esp + 0x1e4]
jmp 0x54af09
mov dword [esp + 0x44], ebp
mov dword [esp + 0x1e0], esi
xor ecx, ecx
test cl, cl
jne 0x54af67
mov edi, dword [esi + 0x24]
mov dword [esp + 0x80], edi
sar edi, 0x1f
test edi, edi
je 0x54af71
mov edi, 0xffffffff
jmp 0x54b067
mov dword [esp], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x80]
cmp dword [esp + 0x10], ecx
setb dl
test eax, eax
sete al
and edx, eax
test dl, dl
je 0x54afde
mov eax, dword [esp + 0x200]
xor ecx, ecx
mov edx, dword [esp + 0x208]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x1e0]
mov edi, 0xffffffff
jmp 0x54b067
mov eax, ecx
shr ecx, 0x1c
mov edx, eax
shl eax, 4
test ecx, ecx
sete cl
seta bl
cmp eax, 0xa00000
seta al
and ecx, eax
or ebx, ecx
test bl, bl
je 0x54b043
mov dword [esp], 0xa00000
mov dword [esp + 4], 0
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test ecx, ecx
sete cl
test eax, eax
sete dl
and ecx, edx
test cl, cl
je 0x54b041
mov eax, 1
mov edx, eax
mov eax, dword [esp + 0x200]
xor ecx, ecx
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x1e0]
mov edi, edx
mov edx, dword [esp + 0x208]
test edi, edi
jl 0x54b15d
mov dword [esp + 0x3c], edi
lea eax, [0x5dd220]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], edi
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x1e0]
mov dword [ecx + 0x2c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 0x30], edx
mov edx, dword [0x776350]
test edx, edx
je 0x54b0bd
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [ecx + 0x28]
mov dword [edi + 4], edx
mov dword [ecx + 0x28], eax
mov eax, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x20]
mov ebx, dword [esp + 0x1e4]
mov ebp, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
add eax, ebp
adc edx, esi
cmp esi, edx
xchg esi, ebx
setg bl
xchg esi, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp eax, ebp
xchg ebp, ebx
setb bl
xchg ebp, ebx
and edi, ebp
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x54b108
mov eax, dword [0x72fb08]
mov edx, dword [0x72fb0c]
jmp 0x54b112
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
xor eax, eax
xor edx, edx
test eax, eax
jne 0x54b13d
mov eax, dword [esp + 0x200]
xor edx, edx
jmp 0x54b261
mov ecx, ebx
mov edx, dword [esp + 0x208]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x44]
jmp 0x54af09
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], edx
add esp, 0x28c
ret
mov dword [esp + 0x274], 0
mov dword [esp + 0x278], 0
mov dword [esp + 0x27c], 0
mov dword [esp + 0x280], 0
mov eax, dword [esi + 0x24]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c2cc0]
mov dword [esp + 0x274], ecx
mov dword [esp + 0x278], eax
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c2d80]
mov dword [esp + 0x27c], ecx
mov dword [esp + 0x280], eax
lea eax, [0x5f8a10]
mov dword [esp], eax
mov dword [esp + 4], 0x23
lea eax, [esp + 0x274]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov dword [esp + 0x298], eax
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
add esp, 0x28c
ret
lea esi, [esp + 0x1ec]
call fcn.0046b088
inc edx
mov ecx, dword [esp + 0x1e0]
cmp dword [ecx + 0x24], edx
jbe 0x54b124
mov dword [esp + 0x70], edx
mov dword [esp + 0x1ec], 0
mov dword [esp + 0x1f0], 0
mov dword [esp + 0x1f4], 0
mov dword [esp + 0x1f8], 0
movzx ebp, word [eax]
cmp bp, 0x1df
je 0x54b3dc
cmp bp, 0x1f7
jne 0x54b4f2
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov word [esp + 0xb8], 0
lea eax, [0x634c48]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [0x63620c]
mov dword [esp + 8], ecx
lea edx, [0x776160]
mov dword [esp + 0xc], edx
lea ebp, [0x5b9480]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0xac]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x54b5cf
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x1f0], ecx
mov eax, dword [esp + 0xb4]
lea ecx, [0x5c4680]
mov dword [esp], ecx
lea edx, [esp + 0x258]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sym.runtime.mapaccess1_fast32
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x1f4], eax
movzx eax, byte [esp + 0xb9]
mov byte [esp + 0x1fb], al
movzx eax, byte [esp + 0xb8]
and eax, 0x3f
inc eax
mov byte [esp + 0x1fa], al
movzx eax, byte [esp + 0xb8]
test al, 0x80
je 0x54b3a9
mov byte [esp + 0x1f8], 1
movzx eax, byte [esp + 0xb8]
test al, 0x40
je 0x54b3be
mov byte [esp + 0x1f9], 1
mov eax, dword [esp + 0x200]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x1e4]
jmp 0x54b4f2
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov word [esp + 0xc4], 0
lea eax, [0x634c48]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [0x63620c]
mov dword [esp + 8], ecx
lea edx, [0x776160]
mov dword [esp + 0xc], edx
lea ebp, [0x5b9440]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0xbc]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x54b5f3
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x1f0], 0
mov eax, dword [esp + 0xc0]
lea ecx, [0x5c4680]
mov dword [esp], ecx
lea edx, [esp + 0x258]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sym.runtime.mapaccess1_fast32
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x1f4], eax
movzx eax, byte [esp + 0xc5]
mov byte [esp + 0x1fb], al
movzx eax, byte [esp + 0xc4]
and eax, 0x3f
inc eax
mov byte [esp + 0x1fa], al
movzx eax, byte [esp + 0xc4]
test al, 0x80
je 0x54b4c4
mov byte [esp + 0x1f8], 1
movzx eax, byte [esp + 0xc4]
test al, 0x40
je 0x54b4d9
mov byte [esp + 0x1f9], 1
mov eax, dword [esp + 0x200]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x1e4]
mov ebp, dword [ecx + 0x30]
mov esi, dword [ecx + 0x2c]
inc esi
mov edi, dword [ecx + 0x28]
cmp ebp, esi
jae 0x54b56f
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x5dd220]
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 + 0x1e0]
mov dword [ebx + 0x30], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54b54f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x28]
mov dword [edi + 4], eax
mov dword [ebx + 0x28], ecx
mov eax, dword [esp + 0x200]
mov ebx, dword [esp + 0x1e4]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x70]
mov dword [ecx + 0x2c], esi
mov ebp, dword [0x776350]
dec esi
shl esi, 4
add edi, esi
test ebp, ebp
je 0x54b24d
mov dword [esp + 0x204], edi
lea eax, [0x5dd220]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x1ec]
mov dword [esp + 8], eax
call sym.runtime.wbMove
mov eax, dword [esp + 0x200]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x1e4]
mov edi, dword [esp + 0x204]
jmp 0x54b24d
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
inc eax
cmp eax, ecx
jge 0x54adbf
movzx edx, byte [eax + edi]
test dl, dl
jne 0x54b617
jmp 0x54adbf
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], eax
mov dword [esp + 0x2a0], ecx
add esp, 0x28c
ret
mov eax, edi
mov edx, esi
mov esi, dword [edx + 0x14]
cmp esi, 2
je 0x54b66e
cmp esi, 0x6f
je 0x54b66e
cmp esi, 0x6b
je 0x54b66e
mov edi, eax
mov eax, dword [esp + 0x74]
jmp 0x54ae39
test ebp, ebp
jg 0x54b67c
mov ebx, dword [esp + 0x64]
mov esi, dword [esp + 0x74]
jmp 0x54b68e
mov esi, dword [esp + 0x74]
lea edi, [ebp + esi]
mov ecx, ebx
mov ebx, dword [esp + 0x64]
cmp ebx, edi
jg 0x54b697
mov edi, eax
mov eax, esi
jmp 0x54ae39
mov dword [esp + 0x9c], edi
mov edi, dword [edx + 0x10]
mov edx, dword [esp + 0xa0]
cmp edi, edx
jle 0x54b6b5
mov edi, eax
mov eax, esi
jmp 0x54ae39
mov byte [esp + 0x31], cl
mov dword [esp + 0x98], ebp
test edi, edi
jne 0x54b6db
mov edi, dword [esp + 0x1dc]
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
jmp 0x54b70d
mov edx, dword [eax + 8]
lea ebx, [edi - 1]
cmp edx, ebx
jbe 0x54bba6
mov edx, dword [esp + 0x1dc]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 0xc]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi*4 - 4]
mov edi, dword [eax + 8]
mov eax, dword [eax + 0xc]
sub ebx, edi
mov dword [edx + 8], ebx
sbb ebp, eax
mov dword [edx + 0xc], ebp
lea eax, [0x5c4680]
mov dword [esp], eax
lea ecx, [esp + 0x258]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call sym.runtime.mapassign_fast32
mov eax, dword [esp + 0xc]
test byte [eax], al
mov ecx, dword [0x776350]
test ecx, ecx
jne 0x54b743
mov ecx, dword [esp + 0x1dc]
jmp 0x54b756
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x1dc]
mov dword [edi], ecx
mov edx, dword [eax]
mov dword [edi + 4], edx
mov dword [eax], ecx
movzx edx, byte [esp + 0x31]
test dl, dl
je 0x54b8d7
mov ebx, dword [esp + 0x200]
movzx ebp, word [ebx]
cmp bp, 0x1df
je 0x54b831
cmp bp, 0x1f7
je 0x54b788
test dl, dl
jmp 0x54b8de
lea edi, [esp + 0xf0]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9280]
mov dword [esp + 0x10], esi
lea esi, [esp + 0xf0]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54b80d
mov ecx, dword [esp + 0xf8]
mov edx, dword [esp + 0x1dc]
mov dword [edx + 0x18], ecx
mov dword [edx + 0x1c], 0
movzx ecx, byte [esp + 0x31]
test cl, cl
mov ecx, edx
mov ebx, dword [esp + 0x200]
jmp 0x54b8de
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
lea edi, [esp + 0x104]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov edx, dword [esp + 0x1e4]
mov dword [esp + 4], edx
lea ebx, [0x63620c]
mov dword [esp + 8], ebx
lea ebp, [0x776160]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9240]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x104]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54b8b3
mov ecx, dword [esp + 0x108]
mov edx, dword [esp + 0x1dc]
mov dword [edx + 0x18], ecx
mov dword [edx + 0x1c], 0
movzx ecx, byte [esp + 0x31]
test cl, cl
mov ecx, edx
mov ebx, dword [esp + 0x200]
jmp 0x54b8de
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov ebx, dword [esp + 0x200]
je 0x54b8e9
mov esi, dword [esp + 0x1e4]
jmp 0x54b951
mov edx, dword [esp + 0x98]
lea eax, [edx - 1]
mov edx, eax
sar edx, 0x1f
mov ebp, 0x12
mov esi, edx
mul ebp
lea esi, [esi + esi*8]
lea edx, [edx + esi*2]
mov esi, dword [esp + 0x1e4]
mov edi, dword [esi + 0x10]
mov ebp, dword [esi + 0x14]
mov ecx, dword [esi + 0xc]
add edi, eax
adc ebp, edx
cmp ecx, ebp
sete cl
setg dl
cmp dword [esi + 8], edi
seta al
and eax, ecx
or edx, eax
test dl, dl
je 0x54b93f
mov ecx, dword [0x72fb08]
mov edx, dword [0x72fb0c]
jmp 0x54b949
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], ebp
xor ecx, ecx
xor edx, edx
test ecx, ecx
jne 0x54bb86
movzx ecx, word [ebx]
cmp cx, 0x1df
je 0x54ba26
cmp cx, 0x1f7
jne 0x54baba
lea edi, [esp + 0xc8]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov dword [esp + 4], esi
lea edx, [0x63620c]
mov dword [esp + 8], edx
lea ebx, [0x776160]
mov dword [esp + 0xc], ebx
lea ebp, [0x5b9200]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0xc8]
mov dword [esp + 0x14], ebp
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54ba02
movzx ecx, byte [esp + 0xd2]
and ecx, 7
mov edx, dword [esp + 0x1dc]
mov dword [edx + 0x2c], ecx
movzx ecx, byte [esp + 0xd3]
mov dword [edx + 0x28], ecx
mov ecx, dword [esp + 0xd4]
mov ebx, dword [esp + 0xc8]
mov dword [edx + 0x20], ebx
mov dword [edx + 0x24], ecx
mov ebx, dword [esp + 0x200]
mov esi, dword [esp + 0x1e4]
jmp 0x54baba
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
lea edi, [esp + 0xdc]
xor eax, eax
call fcn.0046ab9b
lea ecx, [0x634c48]
mov dword [esp], ecx
mov dword [esp + 4], esi
lea edx, [0x63620c]
mov dword [esp + 8], edx
lea ebx, [0x776160]
mov dword [esp + 0xc], ebx
lea ebp, [0x5b91c0]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0xdc]
mov dword [esp + 0x14], ebp
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54bb62
movzx ecx, byte [esp + 0xe6]
and ecx, 7
mov edx, dword [esp + 0x1dc]
mov dword [edx + 0x2c], ecx
movzx ecx, byte [esp + 0xe7]
mov dword [edx + 0x28], ecx
mov ecx, dword [esp + 0xdc]
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], 0
mov ebx, dword [esp + 0x200]
mov esi, dword [esp + 0x1e4]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x14]
inc edx
mov ebp, dword [ebx + 0x10]
cmp ecx, edx
jae 0x54bb23
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5b9140]
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 + 0x200]
mov dword [ebx + 0x18], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54bb17
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x10]
mov dword [edi + 4], ebp
mov dword [ebx + 0x10], ecx
mov esi, dword [esp + 0x1e4]
mov ebp, ecx
mov dword [ebx + 0x14], edx
mov ecx, dword [0x776350]
test ecx, ecx
jne 0x54bb39
mov ecx, dword [esp + 0x1dc]
jmp 0x54bb4e
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x1dc]
mov dword [edi], ecx
mov eax, dword [ebp + edx*4 - 4]
mov dword [edi + 4], eax
mov dword [ebp + edx*4 - 4], ecx
mov edi, ebx
xor ebp, ebp
mov eax, dword [esp + 0x9c]
jmp 0x54ae39
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
add esp, 0x28c
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], edx
add esp, 0x28c
ret
mov eax, ebx
mov ecx, edx
call sym.runtime.panicIndex
mov ecx, eax
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceBU
inc eax
cmp eax, 8
jge 0x54bbd2
movzx edi, byte [esp + eax + 0x12c]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x54bbbb
cmp eax, 8
ja 0x54bc33
mov dword [esp], 0
lea ecx, [esp + 0x12c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x1dc]
mov dword [edx + 4], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54bc17
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx]
mov dword [edi + 4], ebx
mov dword [edx], ecx
movzx ebx, byte [esp + 0x2f]
mov ebp, dword [esp + 0x9c]
mov esi, edx
mov edi, dword [esp + 0x200]
jmp 0x54b64d
mov ecx, eax
mov edx, 8
call sym.runtime.panicSliceAcap
inc eax
cmp eax, ecx
jge 0x54bc4c
movzx edx, byte [eax + edi]
test dl, dl
jne 0x54bc3f
mov edx, dword [esp + 0x88]
cmp eax, edx
ja 0x54bcdb
mov byte [esp + 0x30], bl
mov dword [esp + 0x94], ebp
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x30]
mov ebp, dword [esp + 0x94]
mov esi, dword [esp + 0x1dc]
mov edi, dword [esp + 0x200]
mov edx, eax
mov eax, 1
mov dword [esi + 4], ecx
mov ecx, dword [0x776350]
test ecx, ecx
je 0x54bcc3
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ecx, dword [esi]
mov dword [edi + 4], ecx
mov edi, dword [esp + 0x200]
mov dword [esi], edx
test al, al
je 0x54bcd2
mov eax, edi
mov edx, esi
jmp 0x54b651
mov eax, dword [esp + 0x74]
jmp 0x54ae39
mov ecx, eax
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceBU
inc eax
cmp eax, 8
jge 0x54a785
movzx ebx, byte [esp + eax + 0x188]
test bl, bl
jne 0x54bce7
jmp 0x54a782
mov ecx, eax
mov edx, 8
call sym.runtime.panicSliceAcap
inc eax
cmp eax, 8
jge 0x54bd23
movzx ebx, byte [esp + eax + 0x140]
test bl, bl
jne 0x54bd0e
cmp eax, 8
ja 0x54bdd8
mov dword [esp], 0
lea ecx, [esp + 0x140]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x1e8]
mov dword [edx + 4], eax
mov eax, dword [0x776350]
test eax, eax
je 0x54bd6c
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ecx
mov ebp, dword [esp + 0x150]
mov esi, dword [esp + 0x154]
mov dword [edx + 8], ebp
mov dword [edx + 0xc], esi
mov ebp, dword [esp + 0x158]
mov esi, dword [esp + 0x15c]
mov dword [edx + 0x10], ebp
mov dword [edx + 0x14], esi
mov ebp, dword [esp + 0x180]
mov ecx, dword [esp + 0x160]
mov ebx, dword [esp + 0x164]
mov dword [edx + 0x18], ebp
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x16c]
mov dword [edx + 0x1c], ebp
mov dword [edx + 0x20], esi
mov ebp, dword [esp + 0x178]
mov dword [edx + 0x24], ebp
mov eax, dword [esp + 0x200]
jmp 0x54a828
mov ecx, eax
mov edx, 8
call sym.runtime.panicSliceAcap
nop
call sym.runtime.morestack_noctxt
jmp sym.internal_xcoff.NewFile