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

Disassembly:
mov ecx, dword [0x7b1178]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x228]
cmp eax, dword [ecx + 8]
jbe 0x55199e
sub esp, 0x2a8
lea eax, [0x60d0e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x26c], eax
nop
lea ecx, [0x609000]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2ac]
mov dword [eax], ecx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x54f4b9
mov edx, dword [esp + 0x2b0]
jmp 0x54f4c7
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x2b0]
mov dword [edi], edx
mov dword [esp + 0x248], 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, [0x5ea5e0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 0x2ac]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 4]
mov dword [esp + 0x2a4], edx
mov ebx, dword [esp + 0x2b0]
mov dword [esp], ebx
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call ecx
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x54f9b3
mov eax, dword [esp + 0x2a4]
movzx ecx, byte [eax + 3]
movzx edx, byte [eax + 2]
mov ebx, edx
shl edx, 8
or edx, ecx
movzx ebp, byte [eax + 1]
mov esi, ebp
shl ebp, 0x10
or edx, ebp
movzx eax, byte [eax]
mov ebp, eax
shl eax, 0x18
or eax, edx
mov edx, eax
and eax, 0xfffffffe
shl esi, 8
or ebp, esi
shl ebx, 0x10
or ebp, ebx
shl ecx, 0x18
nop
nop
or ecx, ebp
cmp eax, 0xfeedface
jne 0x54f5dd
lea eax, [0x66f724]
mov ecx, dword [esp + 0x26c]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x54f5d0
mov eax, dword [ecx + 0x20]
call sym.runtime.gcWriteBarrier1
mov dword [edi], eax
lea eax, [0x7b1020]
mov dword [ecx + 0x20], eax
mov dword [ecx], edx
jmp 0x54f61f
mov eax, ecx
and ecx, 0xfffffffe
cmp ecx, 0xfeedface
jne 0x54f95d
lea ecx, [0x66f74c]
mov edx, dword [esp + 0x26c]
mov dword [edx + 0x1c], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x54f612
mov ecx, dword [edx + 0x20]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x7b1020]
mov dword [edx + 0x20], ecx
mov dword [edx], eax
mov ecx, edx
mov eax, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x20]
lea ebx, [0x66e2d0]
mov dword [esp], ebx
mov ebx, dword [esp + 0x248]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x5e18c0]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x54f939
mov eax, dword [esp + 0x26c]
cmp dword [eax], 0xfeedfacf
jne 0x54f676
mov ecx, 0x20
jmp 0x54f67b
mov ecx, 0x1c
mov dword [esp + 0x16c], ecx
mov edx, dword [eax + 0x14]
mov ebx, dword [esp + 0x2ac]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b0]
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
test eax, eax
jne 0x54f915
mov dword [esp + 0x210], edx
mov dword [esp + 0x218], ebx
mov dword [esp + 0x274], ecx
xor eax, eax
test al, al
je 0x54f6f3
mov eax, dword [esp + 0x26c]
jmp 0x54f706
mov eax, dword [esp + 0x26c]
mov ebp, dword [eax + 0x10]
mov esi, ebp
sar ebp, 0x1f
test ebp, ebp
je 0x54f710
mov ebp, 0xffffffff
jmp 0x54f801
mov dword [esp + 0x23c], esi
mov dword [esp], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0
call sym.runtime.uint64div
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x23c]
cmp dword [esp + 0x10], ecx
setb dl
test eax, eax
sete al
and edx, eax
test dl, dl
je 0x54f77e
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x274]
mov edx, dword [esp + 0x210]
mov ebx, dword [esp + 0x218]
mov ebp, 0xffffffff
jmp 0x54f801
mov eax, ecx
shr ecx, 0x1d
mov edx, eax
shl eax, 3
test ecx, ecx
seta cl
sete bl
cmp eax, 0xa00000
seta al
and ebx, eax
or ebx, ecx
test bl, bl
je 0x54f7e3
mov dword [esp], 0xa00000
mov dword [esp + 4], 0
mov dword [esp + 8], 8
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 0x54f7e1
mov eax, 1
mov edx, eax
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x274]
mov ebx, dword [esp + 0x218]
mov ebp, edx
mov edx, dword [esp + 0x210]
test ebp, ebp
jl 0x54f8af
mov dword [esp + 0x40], ebp
lea eax, [0x5f2ce0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ebp
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x26c]
mov dword [ecx + 0x28], 0
mov edx, dword [esp + 0x40]
mov dword [ecx + 0x2c], edx
mov edx, dword [0x7b12d0]
test edx, edx
je 0x54f857
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [ecx + 0x24]
mov dword [edi + 4], edx
mov dword [ecx + 0x24], eax
mov eax, dword [ecx + 0x1c]
mov dword [esp + 0x21c], eax
mov ebp, dword [ecx + 0x20]
mov dword [esp + 0x278], ebp
mov esi, dword [esp + 0x16c]
mov edx, dword [esp + 0x210]
mov ebx, dword [esp + 0x218]
mov edi, dword [esp + 0x274]
mov dword [esp + 0x220], eax
xor eax, eax
mov dword [esp + 0x17c], eax
xor eax, eax
mov dword [esp + 0x170], eax
mov eax, dword [esp + 0x220]
jmp 0x54fa22
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0x16
lea ecx, [0x625050]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x14
lea ecx, [0x623ea0]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov eax, dword [esp + 0x17c]
inc eax
mov ebx, dword [esp + 0x26c]
mov esi, dword [esp + 0x278]
mov edi, dword [esp + 0x21c]
mov ecx, ebx
mov ebp, esi
mov dword [esp + 0x17c], eax
mov edi, dword [esp + 0x284]
mov ebx, dword [esp + 0x238]
mov edx, dword [esp + 0x210]
mov esi, dword [esp + 0x16c]
mov eax, dword [esp + 0x21c]
mov dword [esp + 0x16c], esi
mov esi, dword [esp + 0x17c]
cmp dword [ecx + 0x10], esi
jbe 0x551408
cmp edx, 8
jl 0x55139f
mov dword [esp + 0x274], edi
mov dword [esp + 0x218], ebx
mov dword [esp + 0x210], edx
mov ecx, dword [eax + 0x20]
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x21c]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x218]
lea ebx, [edx - 4]
mov ebp, dword [esp + 0x274]
lea esi, [ebp + 4]
mov edi, dword [esp + 0x10]
mov dword [esp + 0x23c], edi
mov eax, dword [esp + 0x278]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
cmp eax, 8
jb 0x551336
mov ecx, dword [esp + 0x210]
cmp ecx, eax
jb 0x551336
mov dword [esp + 0x4c], eax
mov edx, dword [esp + 0x218]
mov ebx, edx
sub edx, eax
mov dword [esp + 0x238], edx
neg edx
sar edx, 0x1f
and edx, eax
mov esi, dword [esp + 0x274]
add edx, esi
mov dword [esp + 0x284], edx
sub ecx, eax
mov dword [esp + 0x210], ecx
mov ecx, dword [esp + 0x16c]
add ecx, eax
mov dword [esp + 0x16c], ecx
mov ecx, dword [esp + 0x170]
adc ecx, 0
mov dword [esp + 0x170], ecx
mov ecx, dword [esp + 0x23c]
cmp ecx, 0xb
ja 0x550448
cmp ecx, 1
je 0x5501d6
cmp ecx, 2
je 0x54fef9
cmp ecx, 0xb
jne 0x550466
lea edi, [esp + 0x180]
xor eax, eax
call fcn.0046ffbc
nop
lea ecx, [0x5ff960]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ebx, dword [esp + 0x218]
mov dword [ecx + 8], ebx
mov ebp, dword [0x7b12d0]
test ebp, ebp
jne 0x54fb97
mov eax, dword [esp + 0x274]
jmp 0x54fba5
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov dword [ecx], eax
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xffffffff
lea edx, [0x66e0e4]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x21c]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x278]
mov dword [esp + 0xc], ebx
lea ebp, [0x5e17c0]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0x180]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x5510b4
mov eax, dword [esp + 0x26c]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
je 0x55104b
mov edx, dword [esp + 0x198]
mov ecx, dword [ecx + 0x28]
mov dword [esp + 0x234], ecx
cmp edx, ecx
ja 0x550f03
mov ebx, dword [esp + 0x19c]
add edx, ebx
cmp ecx, edx
jb 0x550db4
mov eax, dword [esp + 0x1bc]
mov ecx, eax
shl eax, 2
shr ecx, 0x1e
mov edx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x2ac]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b0]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x550d90
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x20c], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x214], ecx
mov edx, dword [esp + 0x1bc]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x270], ebx
lea ebp, [0x5ed820]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x280], eax
mov ecx, dword [esp + 0x1bc]
mov dword [esp + 0x23c], ecx
lea edx, [0x5ff960]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x20c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x214]
mov dword [eax + 8], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x54fd21
mov ecx, dword [esp + 0x270]
jmp 0x54fd2f
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x270]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xffffffff
mov ecx, dword [esp + 0x280]
mov dword [esp + 0x288], ecx
mov edx, dword [esp + 0x23c]
mov dword [esp + 0x28c], edx
mov dword [esp + 0x290], edx
lea ebx, [0x66e0e4]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x21c]
mov dword [esp + 8], eax
mov ebp, dword [esp + 0x278]
mov dword [esp + 0xc], ebp
lea esi, [0x5e6d00]
mov dword [esp + 0x10], esi
lea edi, [esp + 0x288]
mov dword [esp + 0x14], edi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x550d6c
lea eax, [0x607080]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x218]
mov dword [eax + 8], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x54fde8
mov ecx, dword [esp + 0x274]
jmp 0x54fdf6
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x274]
mov dword [edi], ecx
mov dword [eax], ecx
lea edi, [eax + 0xc]
lea esi, [esp + 0x180]
call fcn.00470418
mov ecx, dword [esp + 0x23c]
mov dword [eax + 0x60], ecx
mov dword [eax + 0x64], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x54fe27
mov ecx, dword [esp + 0x280]
jmp 0x54fe3b
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x280]
mov dword [edi], ecx
mov edx, dword [eax + 0x5c]
mov dword [edi + 4], edx
mov dword [eax + 0x5c], ecx
mov ecx, dword [esp + 0x26c]
mov edx, dword [ecx + 0x2c]
mov ebx, dword [ecx + 0x28]
inc ebx
mov ebp, dword [ecx + 0x24]
cmp edx, ebx
jae 0x54febe
mov dword [esp + 0x250], eax
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x54fea9
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x24]
mov dword [edi + 4], eax
mov dword [ebx + 0x24], ecx
mov eax, dword [esp + 0x250]
mov ebx, edx
mov ebp, ecx
mov ecx, dword [esp + 0x26c]
mov dword [ecx + 0x28], ebx
lea edx, [ebp + ebx*8 - 8]
lea esi, [0x66e350]
mov dword [edx], esi
mov edx, dword [0x7b12d0]
lea ebx, [ebp + ebx*8 - 4]
test edx, edx
je 0x54feed
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov edx, dword [ebx]
mov dword [edi + 4], edx
mov edx, dword [ecx + 0x40]
mov dword [edi + 8], edx
mov dword [ebx], eax
mov dword [ecx + 0x40], eax
xor eax, eax
jmp 0x550c07
lea edi, [esp + 0x1d0]
xor eax, eax
call fcn.0046ffca
nop
lea ecx, [0x5ff960]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ebx, dword [esp + 0x218]
mov dword [ecx + 8], ebx
mov ebp, dword [0x7b12d0]
test ebp, ebp
jne 0x54ff3e
mov eax, dword [esp + 0x274]
jmp 0x54ff4c
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov dword [ecx], eax
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xffffffff
lea edx, [0x66e0e4]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x21c]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x278]
mov dword [esp + 0xc], ebx
lea ebp, [0x5e1740]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0x1d0]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x551144
mov eax, dword [esp + 0x1e4]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x2ac]
mov dword [esp], edx
mov ebx, dword [esp + 0x2b0]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
call sym.internal_saferio.ReadDataAt
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
test eax, eax
jne 0x551120
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], edx
mov dword [esp + 0x24c], ecx
mov ebp, dword [esp + 0x26c]
cmp dword [ebp], 0xfeedfacf
jne 0x55002a
mov eax, 0x10
jmp 0x55002f
mov eax, 0xc
mov ecx, dword [esp + 0x1dc]
mov edx, eax
mov eax, ecx
mov ebx, edx
mul edx
sar ebx, 0x1f
imul ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x1d8]
mov ebx, dword [esp + 0x2ac]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b0]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call sym.internal_saferio.ReadDataAt
mov ecx, dword [esp + 0x24]
test ecx, ecx
jne 0x5510fc
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x26c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x24c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x274]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x218]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x1d0]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x170]
mov dword [esp + 0x30], ecx
call sym.debug_macho._File_.parseSymtab
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
test eax, eax
jne 0x5510d8
mov eax, dword [esp + 0x26c]
mov edx, dword [eax + 0x2c]
mov ebx, dword [eax + 0x28]
inc ebx
mov ebp, dword [eax + 0x24]
cmp edx, ebx
jae 0x550193
mov dword [esp + 0x254], ecx
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550183
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x24]
mov dword [edi + 4], eax
mov dword [ebx + 0x24], ecx
mov eax, ebx
mov ebx, edx
mov ebp, ecx
mov ecx, dword [esp + 0x254]
mov dword [eax + 0x28], ebx
lea edx, [ebp + ebx*8 - 8]
lea esi, [0x66e340]
mov dword [edx], esi
mov edx, dword [0x7b12d0]
lea ebx, [ebp + ebx*8 - 4]
test edx, edx
je 0x5501c2
call sym.runtime.gcWriteBarrier3
mov dword [edi], ecx
mov edx, dword [ebx]
mov dword [edi + 4], edx
mov edx, dword [eax + 0x3c]
mov dword [edi + 8], edx
mov dword [ebx], ecx
mov dword [eax + 0x3c], ecx
mov ecx, eax
lea esi, [0x66e350]
xor eax, eax
jmp 0x550c07
lea edi, [esp + 0x12c]
xor eax, eax
call fcn.0046ffc2
nop
lea ecx, [0x5ff960]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ebx, dword [esp + 0x218]
mov dword [ecx + 8], ebx
mov ebp, dword [0x7b12d0]
test ebp, ebp
jne 0x55021b
mov eax, dword [esp + 0x274]
jmp 0x550229
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov dword [esp + 0x244], ecx
mov dword [ecx], eax
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xffffffff
lea edx, [0x66e0e4]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x21c]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x278]
mov dword [esp + 0xc], ebp
lea esi, [0x5e1a80]
mov dword [esp + 0x10], esi
lea edi, [esp + 0x12c]
mov dword [esp + 0x14], edi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x551168
lea eax, [0x60caa0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x218]
mov dword [eax + 8], edx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x5502c6
mov edx, dword [esp + 0x274]
jmp 0x5502d4
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x274]
mov dword [edi], edx
mov dword [esp + 0x260], eax
mov dword [eax], edx
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], ecx
lea ecx, [esp + 0x134]
mov dword [esp], ecx
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x260]
mov dword [edx + 0x18], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x55032f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0x14]
mov dword [edi + 4], ebx
mov dword [edx + 0x14], ecx
mov ecx, dword [esp + 0x144]
mov dword [edx + 0x1c], ecx
mov dword [edx + 0x20], 0
mov ecx, dword [esp + 0x148]
mov dword [edx + 0x24], ecx
mov dword [edx + 0x28], 0
mov ecx, dword [esp + 0x14c]
mov dword [edx + 0x2c], ecx
mov dword [edx + 0x30], 0
mov ecx, dword [esp + 0x150]
mov dword [edx + 0x34], ecx
mov dword [edx + 0x38], 0
mov ecx, dword [esp + 0x154]
mov dword [edx + 0x3c], ecx
mov ecx, dword [esp + 0x158]
mov dword [edx + 0x40], ecx
mov ecx, dword [esp + 0x15c]
mov dword [edx + 0x44], ecx
mov ecx, dword [esp + 0x160]
mov dword [edx + 0x48], ecx
mov ecx, dword [esp + 0x26c]
mov ebx, dword [ecx + 0x2c]
mov ebp, dword [ecx + 0x28]
inc ebp
mov esi, dword [ecx + 0x24]
cmp ebx, ebp
jae 0x550412
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550402
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x24]
mov dword [edi + 4], ebp
mov dword [ebx + 0x24], ecx
mov ebp, edx
mov esi, ecx
mov ecx, ebx
mov edx, dword [esp + 0x260]
mov dword [ecx + 0x28], ebp
lea ebx, [esi + ebp*8 - 8]
mov eax, ecx
lea ecx, [0x66e360]
mov dword [ebx], ecx
mov ebx, dword [0x7b12d0]
lea ebp, [esi + ebp*8 - 4]
test ebx, ebx
je 0x55043e
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [ebp]
mov dword [edi + 4], ebx
mov dword [ebp], edx
xor ebx, ebx
jmp 0x5517a3
cmp ecx, 0xc
je 0x5509cf
cmp ecx, 0x19
je 0x550751
cmp ecx, 0x8000001c
je 0x55052d
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call sym.runtime.convTslice
mov eax, dword [esp + 0x26c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [eax + 0x28]
inc edx
mov ebx, dword [eax + 0x24]
mov ebp, dword [esp + 0xc]
cmp ecx, edx
jae 0x5504f3
mov dword [esp + 0x280], ebp
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x5504e5
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x24]
mov dword [edi + 4], eax
mov dword [ebx + 0x24], ecx
mov eax, ebx
mov ebp, dword [esp + 0x280]
mov ebx, ecx
mov dword [eax + 0x28], edx
lea ecx, [ebx + edx*8 - 8]
lea esi, [0x66e320]
mov dword [ecx], esi
mov ecx, dword [0x7b12d0]
lea edx, [ebx + edx*8 - 4]
test ecx, ecx
je 0x55051c
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebp
mov ecx, dword [edx]
mov dword [edi + 4], ecx
mov dword [edx], ebp
mov ecx, eax
lea esi, [0x66e350]
xor eax, eax
jmp 0x550c07
mov dword [esp + 0x200], 0
mov dword [esp + 0x204], 0
mov dword [esp + 0x208], 0
nop
lea eax, [0x5ff960]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x218]
mov dword [eax + 8], edx
mov ebx, dword [0x7b12d0]
test ebx, ebx
jne 0x550585
mov ebx, dword [esp + 0x274]
jmp 0x550593
call sym.runtime.gcWriteBarrier1
mov ebx, dword [esp + 0x274]
mov dword [edi], ebx
mov dword [eax], ebx
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xffffffff
lea ecx, [0x66e0e4]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x21c]
mov dword [esp + 8], eax
mov edx, dword [esp + 0x278]
mov dword [esp + 0xc], edx
lea ebp, [0x5e19c0]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0x200]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x55122b
lea eax, [0x6042e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x208]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jae 0x55118c
mov edx, dword [esp + 4]
mov dword [esp + 0x268], edx
mov ebx, dword [esp + 0x218]
sub ebx, eax
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov edi, dword [esp + 0x274]
add ebx, edi
mov dword [esp], ebx
sub ecx, eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x268]
mov dword [edx + 0x10], eax
mov eax, dword [0x7b12d0]
test eax, eax
jne 0x550671
mov eax, dword [esp + 0x274]
jmp 0x55068d
call sym.runtime.gcWriteBarrier4
mov dword [edi], ecx
mov eax, dword [edx + 0xc]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x274]
mov dword [edi + 8], eax
mov ebx, dword [edx]
mov dword [edi + 0xc], ebx
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x4c]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x218]
mov dword [edx + 8], ecx
mov dword [edx], eax
mov eax, dword [esp + 0x26c]
mov ecx, dword [eax + 0x2c]
mov ebx, dword [eax + 0x28]
inc ebx
mov ebp, dword [eax + 0x24]
cmp ecx, ebx
jae 0x550717
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550707
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x24]
mov dword [edi + 4], eax
mov dword [ebx + 0x24], ecx
mov eax, ebx
mov ebx, edx
mov ebp, ecx
mov edx, dword [esp + 0x268]
mov dword [eax + 0x28], ebx
lea ecx, [ebp + ebx*8 - 8]
lea esi, [0x66e330]
mov dword [ecx], esi
mov ecx, dword [0x7b12d0]
lea ebx, [ebp + ebx*8 - 4]
test ecx, ecx
je 0x550740
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ecx, dword [ebx]
mov dword [edi + 4], ecx
mov dword [ebx], edx
mov ecx, eax
lea esi, [0x66e350]
xor eax, eax
jmp 0x550c07
lea edi, [esp + 0xe4]
xor eax, eax
call fcn.0046ffbe
nop
lea ecx, [0x5ff960]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ebx, dword [esp + 0x218]
mov dword [ecx + 8], ebx
mov ebp, dword [0x7b12d0]
test ebp, ebp
jne 0x550796
mov eax, dword [esp + 0x274]
jmp 0x5507a4
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov dword [esp + 0x240], ecx
mov dword [ecx], eax
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xffffffff
lea edx, [0x66e0e4]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x21c]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x278]
mov dword [esp + 0xc], ebp
lea esi, [0x5e1ac0]
mov dword [esp + 0x10], esi
lea edi, [esp + 0xe4]
mov dword [esp + 0x14], edi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x55124f
lea eax, [0x60caa0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x218]
mov dword [eax + 8], edx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x550841
mov edx, dword [esp + 0x274]
jmp 0x55084f
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x274]
mov dword [edi], edx
mov dword [esp + 0x260], eax
mov dword [eax], edx
mov dword [eax + 0xc], 0x19
mov dword [eax + 0x10], ecx
lea ecx, [esp + 0xec]
mov dword [esp], ecx
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x260]
mov dword [edx + 0x18], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x5508aa
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0x14]
mov dword [edi + 4], ebx
mov dword [edx + 0x14], ecx
mov ecx, dword [esp + 0xfc]
mov ebx, dword [esp + 0x100]
mov dword [edx + 0x1c], ecx
mov dword [edx + 0x20], ebx
mov ecx, dword [esp + 0x104]
mov ebx, dword [esp + 0x108]
mov dword [edx + 0x24], ecx
mov dword [edx + 0x28], ebx
mov ecx, dword [esp + 0x10c]
mov ebx, dword [esp + 0x110]
mov dword [edx + 0x2c], ecx
mov dword [edx + 0x30], ebx
mov ecx, dword [esp + 0x114]
mov ebx, dword [esp + 0x118]
mov dword [edx + 0x34], ecx
mov dword [edx + 0x38], ebx
mov ecx, dword [esp + 0x11c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [esp + 0x120]
mov dword [edx + 0x40], ecx
mov ecx, dword [esp + 0x124]
mov dword [edx + 0x44], ecx
mov ecx, dword [esp + 0x128]
mov dword [edx + 0x48], ecx
mov ecx, dword [esp + 0x26c]
mov ebx, dword [ecx + 0x2c]
mov ebp, dword [ecx + 0x28]
inc ebp
mov esi, dword [ecx + 0x24]
cmp ebx, ebp
jae 0x550999
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550989
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x24]
mov dword [edi + 4], ebp
mov dword [ebx + 0x24], ecx
mov ebp, edx
mov esi, ecx
mov ecx, ebx
mov edx, dword [esp + 0x260]
mov dword [ecx + 0x28], ebp
lea ebx, [esi + ebp*8 - 8]
mov eax, ecx
lea ecx, [0x66e360]
mov dword [ebx], ecx
mov ebx, dword [0x7b12d0]
lea ebp, [esi + ebp*8 - 4]
test ebx, ebx
je 0x5509c5
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [ebp]
mov dword [edi + 4], ebx
mov dword [ebp], edx
xor ebx, ebx
jmp 0x55159c
lea edi, [esp + 0x1e8]
xor eax, eax
call fcn.0046ffca
nop
lea ecx, [0x5ff960]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ebx, dword [esp + 0x218]
mov dword [ecx + 8], ebx
mov ebp, dword [0x7b12d0]
test ebp, ebp
jne 0x550a14
mov eax, dword [esp + 0x274]
jmp 0x550a22
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov dword [ecx], eax
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xffffffff
lea edx, [0x66e0e4]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x21c]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x278]
mov dword [esp + 0xc], ebx
lea ebp, [0x5e1900]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0x1e8]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x551312
lea eax, [0x60c740]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x1f0]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jae 0x551273
mov edx, dword [esp + 4]
mov dword [esp + 0x264], edx
mov ebx, dword [esp + 0x218]
sub ebx, eax
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov edi, dword [esp + 0x274]
add ebx, edi
mov dword [esp], ebx
sub ecx, eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x264]
mov dword [edx + 0x10], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550b04
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx + 0xc]
mov dword [edi + 4], eax
mov dword [edx + 0xc], ecx
mov eax, dword [esp + 0x1f4]
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0x1f8]
mov dword [edx + 0x18], eax
mov eax, dword [esp + 0x1fc]
mov dword [edx + 0x1c], eax
mov eax, dword [esp + 0x4c]
mov dword [edx + 4], eax
mov eax, dword [esp + 0x218]
mov dword [edx + 8], eax
mov eax, dword [0x7b12d0]
test eax, eax
jne 0x550b49
mov eax, dword [esp + 0x274]
jmp 0x550b5c
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x274]
mov dword [edi], eax
mov ecx, dword [edx]
mov dword [edi + 4], ecx
mov dword [edx], eax
mov eax, dword [esp + 0x26c]
mov ecx, dword [eax + 0x2c]
mov ebx, dword [eax + 0x28]
inc ebx
mov ebp, dword [eax + 0x24]
cmp ecx, ebx
jae 0x550bd2
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5f2ce0]
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 + 0x26c]
mov dword [ebx + 0x2c], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x550bc2
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x24]
mov dword [edi + 4], eax
mov dword [ebx + 0x24], ecx
mov eax, ebx
mov ebx, edx
mov ebp, ecx
mov edx, dword [esp + 0x264]
mov dword [eax + 0x28], ebx
lea ecx, [ebp + ebx*8 - 8]
lea esi, [0x66e174]
mov dword [ecx], esi
mov ecx, dword [0x7b12d0]
lea ebx, [ebp + ebx*8 - 4]
test ecx, ecx
je 0x550bfb
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ecx, dword [ebx]
mov dword [edi + 4], ecx
mov dword [ebx], edx
mov ecx, eax
lea esi, [0x66e350]
xor eax, eax
test eax, eax
jne 0x550c24
mov ecx, dword [esp + 0x2ac]
mov edx, dword [esp + 0x2b0]
lea ebp, [0x66e154]
jmp 0x54f9d7
mov dword [esp + 0x260], eax
mov edx, dword [eax + 0x30]
test edx, edx
jl 0x5514d5
mov ebx, dword [eax + 0x38]
test ebx, ebx
jl 0x55142c
mov dword [esp + 0x23c], ebx
mov dword [esp + 0x230], edx
mov ebp, dword [eax + 0x2c]
mov dword [esp + 0x22c], ebp
mov edi, dword [eax + 0x34]
mov dword [esp + 0x228], edi
mov esi, 0xffffffff
sub esi, edi
mov ecx, 0x7fffffff
sbb ecx, ebx
cmp edx, ecx
sete cl
setl al
cmp esi, ebp
xchg esi, ebx
setae bl
xchg esi, ebx
and esi, ecx
or esi, eax
xchg esi, eax
test al, al
xchg esi, eax
je 0x550c92
add ebp, edi
adc ebx, edx
jmp 0x550c9c
mov ebx, 0x7fffffff
mov ebp, 0xffffffff
mov dword [esp + 0x164], ebp
mov dword [esp + 0x168], ebx
lea eax, [0x609000]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2ac]
mov dword [eax], ecx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x550cd8
mov edx, dword [esp + 0x2b0]
jmp 0x550ce6
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x2b0]
mov dword [edi], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0x22c]
mov dword [eax + 8], ebx
mov ebp, dword [esp + 0x230]
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebp
mov ebx, dword [esp + 0x164]
mov dword [eax + 0x18], ebx
mov ebx, dword [esp + 0x168]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0x228]
mov dword [eax + 0x20], ebx
mov ebx, dword [esp + 0x23c]
mov dword [eax + 0x24], ebx
mov ebx, dword [0x7b12d0]
test ebx, ebx
jne 0x550d3e
mov ebx, dword [esp + 0x260]
jmp 0x550d58
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov ebx, dword [esp + 0x260]
mov ebp, dword [ebx + 0x54]
mov dword [edi + 4], ebp
mov ebp, dword [ebx + 0x50]
mov dword [edi + 8], ebp
mov dword [ebx + 0x54], eax
lea ebp, [0x66e154]
mov dword [ebx + 0x4c], ebp
mov dword [ebx + 0x50], eax
jmp 0x54f9d7
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov dword [esp + 0x294], 0
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
mov eax, dword [esp + 0x19c]
add eax, dword [esp + 0x198]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed820]
mov dword [esp + 0x294], ecx
mov dword [esp + 0x298], eax
mov eax, dword [esp + 0x234]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
lea eax, [0x631b4a]
mov dword [esp], eax
mov dword [esp + 4], 0x75
lea eax, [esp + 0x294]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.fmt.Sprintf
mov eax, dword [esp + 0x18]
mov dword [esp + 0x238], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x284], ecx
lea edx, [0x6005e0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x238]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x550ebe
mov ecx, dword [esp + 0x284]
jmp 0x550ecc
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x284]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov dword [esp + 0x294], 0
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
mov eax, dword [esp + 0x198]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed820]
mov dword [esp + 0x294], ecx
mov dword [esp + 0x298], eax
mov eax, dword [esp + 0x234]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed8e0]
mov dword [esp + 0x29c], ecx
mov dword [esp + 0x2a0], eax
lea eax, [0x631a7f]
mov dword [esp], eax
mov dword [esp + 4], 0x65
lea eax, [esp + 0x294]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.fmt.Sprintf
mov eax, dword [esp + 0x18]
mov dword [esp + 0x238], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x284], ecx
lea edx, [0x6005e0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x238]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x551006
mov ecx, dword [esp + 0x284]
jmp 0x551014
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x284]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x3a
lea ecx, [0x63075a]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x27c], eax
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x1d
lea ecx, [0x628980]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x208]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed820]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x551202
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 + 0x2b4], 0
lea eax, [0x66e164]
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], edx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x27c], eax
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x27
lea ecx, [0x62c8db]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x1f0]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5ed820]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5512e9
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 + 0x2b4], 0
lea eax, [0x66e164]
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], edx
add esp, 0x2a8
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x1a
lea ecx, [0x62724b]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x17
lea ecx, [0x6258fb]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b4], 0
lea ecx, [0x66e164]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov dword [esp + 0x2b4], ecx
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], 0
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x27c], eax
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x19
lea ecx, [0x6269f1]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x260]
mov edx, dword [ecx + 0x34]
mov ecx, dword [ecx + 0x38]
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 + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x5514ac
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 + 0x2b4], 0
lea eax, [0x66e164]
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], edx
add esp, 0x2a8
ret
lea eax, [0x6005e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x27c], eax
mov ecx, dword [esp + 0x16c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x170]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], 0x16
lea ecx, [0x62500e]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x260]
mov edx, dword [ecx + 0x2c]
mov ecx, dword [ecx + 0x30]
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 + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x551555
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 + 0x2b4], 0
lea eax, [0x66e164]
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], edx
add esp, 0x2a8
ret
mov ebp, dword [esp + 0x174]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x26c]
lea ecx, [0x66e360]
mov edx, dword [esp + 0x260]
cmp dword [edx + 0x44], ebx
jle 0x551776
mov dword [esp + 0x174], ebx
lea edi, [esp + 0x50]
xor eax, eax
call fcn.0046ffbc
lea ecx, [0x66e0e4]
mov dword [esp], ecx
mov edx, dword [esp + 0x240]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x21c]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x278]
mov dword [esp + 0xc], ebp
lea esi, [0x5e1a40]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x50]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x551752
lea eax, [0x609f00]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x258], eax
lea ecx, [esp + 0x50]
mov dword [esp], ecx
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x258]
mov dword [edx + 4], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x551661
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ecx
lea eax, [esp + 0x60]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x258]
mov dword [edx + 0xc], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x5516a8
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx + 8]
mov dword [edi + 4], eax
mov dword [edx + 8], ecx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], ecx
mov eax, dword [esp + 0x80]
mov dword [edx + 0x20], eax
mov eax, dword [esp + 0x84]
mov dword [edx + 0x24], eax
mov eax, dword [esp + 0x88]
mov dword [edx + 0x28], eax
mov eax, dword [esp + 0x8c]
mov dword [edx + 0x2c], eax
mov eax, dword [esp + 0x90]
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x26c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x2ac]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x2b0]
mov dword [esp + 0xc], edx
call sym.debug_macho._File_.pushSection
mov eax, dword [esp + 0x10]
test eax, eax
je 0x55157e
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, eax
lea esi, [0x66e350]
mov eax, edx
jmp 0x550c07
mov ebp, dword [esp + 0x178]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x26c]
lea ecx, [0x66e360]
mov edx, dword [esp + 0x260]
cmp dword [edx + 0x44], ebx
jle 0x55198f
mov dword [esp + 0x178], ebx
lea edi, [esp + 0xa0]
xor eax, eax
call fcn.0046ffbf
lea ecx, [0x66e0e4]
mov dword [esp], ecx
mov edx, dword [esp + 0x244]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x21c]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x278]
mov dword [esp + 0xc], ebp
lea esi, [0x5e1a00]
mov dword [esp + 0x10], esi
lea esi, [esp + 0xa0]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x55196b
lea eax, [0x609f00]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x25c], eax
lea ecx, [esp + 0xa0]
mov dword [esp], ecx
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x25c]
mov dword [edx + 4], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x551871
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ecx
lea eax, [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call sym.debug_macho.cstring
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x25c]
mov dword [edx + 0xc], eax
mov eax, dword [0x7b12d0]
test eax, eax
je 0x5518bb
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx + 8]
mov dword [edi + 4], eax
mov dword [edx + 8], ecx
mov eax, dword [esp + 0xc0]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], 0
mov eax, dword [esp + 0xc4]
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], 0
mov eax, dword [esp + 0xc8]
mov dword [edx + 0x20], eax
mov eax, dword [esp + 0xcc]
mov dword [edx + 0x24], eax
mov eax, dword [esp + 0xd0]
mov dword [edx + 0x28], eax
mov eax, dword [esp + 0xd4]
mov dword [edx + 0x2c], eax
mov eax, dword [esp + 0xd8]
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x26c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x2ac]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x2b0]
mov dword [esp + 0xc], edx
call sym.debug_macho._File_.pushSection
mov eax, dword [esp + 0x10]
test eax, eax
je 0x551785
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], ecx
add esp, 0x2a8
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2b4], 0
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], eax
add esp, 0x2a8
ret
mov ecx, eax
lea esi, [0x66e350]
mov eax, edx
jmp 0x550c07
call sym.runtime.morestack_noctxt
jmp sym.debug_macho.NewFile