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

Disassembly:
mov ecx, dword [0x7762b4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x22c]
cmp eax, dword [ecx + 8]
jbe 0x53e75e
sub esp, 0x2ac
lea eax, [0x5de300]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x26c], eax
nop
lea ecx, [0x5dabe0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2b0]
mov dword [eax], ecx
mov edx, dword [0x776370]
test edx, edx
jne 0x53c279
mov edx, dword [esp + 0x2b4]
jmp 0x53c287
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x2b4]
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, [0x5c0260]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 0x2b0]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 4]
mov dword [esp + 0x2a8], edx
mov ebx, dword [esp + 0x2b4]
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 0x53c773
mov eax, dword [esp + 0x2a8]
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 0x53c39d
lea eax, [0x63634c]
mov ecx, dword [esp + 0x26c]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x776370]
test eax, eax
je 0x53c390
mov eax, dword [ecx + 0x20]
call sym.runtime.gcWriteBarrier1
mov dword [edi], eax
lea eax, [0x776180]
mov dword [ecx + 0x20], eax
mov dword [ecx], edx
jmp 0x53c3df
mov eax, ecx
and ecx, 0xfffffffe
cmp ecx, 0xfeedface
jne 0x53c71d
lea ecx, [0x636378]
mov edx, dword [esp + 0x26c]
mov dword [edx + 0x1c], ecx
mov ecx, dword [0x776370]
test ecx, ecx
je 0x53c3d2
mov ecx, dword [edx + 0x20]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x776180]
mov dword [edx + 0x20], ecx
mov dword [edx], eax
mov ecx, edx
mov eax, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x20]
lea ebx, [0x634d98]
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, [0x5b8a40]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x53c6f9
mov eax, dword [esp + 0x26c]
cmp dword [eax], 0xfeedfacf
jne 0x53c436
mov ecx, 0x20
jmp 0x53c43b
mov ecx, 0x1c
mov dword [esp + 0x16c], ecx
mov edx, dword [eax + 0x14]
mov ebx, dword [esp + 0x2b0]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b4]
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 0x53c6d5
mov dword [esp + 0x210], edx
mov dword [esp + 0x218], ebx
mov dword [esp + 0x274], ecx
xor eax, eax
test al, al
je 0x53c4b3
mov eax, dword [esp + 0x26c]
jmp 0x53c4c6
mov eax, dword [esp + 0x26c]
mov ebp, dword [eax + 0x10]
mov esi, ebp
sar ebp, 0x1f
test ebp, ebp
je 0x53c4d0
mov ebp, 0xffffffff
jmp 0x53c5c1
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 0x53c53e
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x274]
mov edx, dword [esp + 0x210]
mov ebx, dword [esp + 0x218]
mov ebp, 0xffffffff
jmp 0x53c5c1
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 0x53c5a3
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 0x53c5a1
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 0x53c66f
mov dword [esp + 0x40], ebp
lea eax, [0x5c7400]
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 [0x776370]
test edx, edx
je 0x53c617
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 0x53c7e2
lea eax, [0x5d3800]
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, [0x5f36e4]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
lea eax, [0x5d3800]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x14
lea ecx, [0x5f2851]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
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 + 0x288]
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 0x53e1c8
cmp edx, 8
jl 0x53e15f
mov dword [esp + 0x274], edi
mov dword [esp + 0x218], ebx
mov dword [esp + 0x210], edx
mov ecx, dword [eax + 0x24]
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 + 0x24]
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 0x53e0f6
mov ecx, dword [esp + 0x210]
cmp ecx, eax
jb 0x53e0f6
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 + 0x288], 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 0x53d208
cmp ecx, 1
je 0x53cf96
cmp ecx, 2
je 0x53ccb9
cmp ecx, 0xb
jne 0x53d226
lea edi, [esp + 0x180]
xor eax, eax
call fcn.0046ac4c
nop
lea ecx, [0x5d2b00]
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 [0x776370]
test ebp, ebp
jne 0x53c957
mov eax, dword [esp + 0x274]
jmp 0x53c965
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, [0x634b68]
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, [0x5b8940]
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 0x53de74
mov eax, dword [esp + 0x26c]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
je 0x53de0b
mov edx, dword [esp + 0x198]
mov ecx, dword [ecx + 0x28]
mov dword [esp + 0x234], ecx
cmp edx, ecx
ja 0x53dcc3
mov ebx, dword [esp + 0x19c]
add edx, ebx
cmp ecx, edx
jb 0x53db74
mov eax, dword [esp + 0x1bc]
mov ecx, eax
shl eax, 2
shr ecx, 0x1e
mov edx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x2b0]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b4]
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 0x53db50
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, [0x5c2d00]
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 + 0x284], eax
mov ecx, dword [esp + 0x1bc]
mov dword [esp + 0x23c], ecx
lea edx, [0x5d2b00]
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 [0x776370]
test ecx, ecx
jne 0x53cae1
mov ecx, dword [esp + 0x270]
jmp 0x53caef
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 + 0x284]
mov dword [esp + 0x28c], ecx
mov edx, dword [esp + 0x23c]
mov dword [esp + 0x290], edx
mov dword [esp + 0x294], edx
lea ebx, [0x634b68]
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, [0x5bd7c0]
mov dword [esp + 0x10], esi
lea edi, [esp + 0x28c]
mov dword [esp + 0x14], edi
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x53db2c
lea eax, [0x5d9360]
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 [0x776370]
test ecx, ecx
jne 0x53cba8
mov ecx, dword [esp + 0x274]
jmp 0x53cbb6
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.0046b0a8
mov ecx, dword [esp + 0x23c]
mov dword [eax + 0x60], ecx
mov dword [eax + 0x64], ecx
mov ecx, dword [0x776370]
test ecx, ecx
jne 0x53cbe7
mov ecx, dword [esp + 0x284]
jmp 0x53cbfb
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x284]
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 0x53cc7e
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, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53cc69
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, [0x634e38]
mov dword [edx], esi
mov edx, dword [0x776370]
lea ebx, [ebp + ebx*8 - 4]
test edx, edx
je 0x53ccad
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 0x53d9c7
lea edi, [esp + 0x1d0]
xor eax, eax
call fcn.0046ac5a
nop
lea ecx, [0x5d2b00]
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 [0x776370]
test ebp, ebp
jne 0x53ccfe
mov eax, dword [esp + 0x274]
jmp 0x53cd0c
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, [0x634b68]
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, [0x5b88c0]
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 0x53df04
mov eax, dword [esp + 0x1e4]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x2b0]
mov dword [esp], edx
mov ebx, dword [esp + 0x2b4]
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 0x53dee0
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 0x53cdea
mov eax, 0x10
jmp 0x53cdef
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 + 0x2b0]
mov dword [esp], ebx
mov ebp, dword [esp + 0x2b4]
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 0x53debc
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 0x53de98
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 0x53cf53
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, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53cf43
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, [0x634e24]
mov dword [edx], esi
mov edx, dword [0x776370]
lea ebx, [ebp + ebx*8 - 4]
test edx, edx
je 0x53cf82
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, [0x634e38]
xor eax, eax
jmp 0x53d9c7
lea edi, [esp + 0x12c]
xor eax, eax
call fcn.0046ac52
nop
lea ecx, [0x5d2b00]
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 [0x776370]
test ebp, ebp
jne 0x53cfdb
mov eax, dword [esp + 0x274]
jmp 0x53cfe9
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, [0x634b68]
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, [0x5b8c00]
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 0x53df28
lea eax, [0x5ddd60]
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 [0x776370]
test edx, edx
jne 0x53d086
mov edx, dword [esp + 0x274]
jmp 0x53d094
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 [0x776370]
test eax, eax
je 0x53d0ef
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 0x53d1d2
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53d1c2
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, [0x634e4c]
mov dword [ebx], ecx
mov ebx, dword [0x776370]
lea ebp, [esi + ebp*8 - 4]
test ebx, ebx
je 0x53d1fe
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 0x53e563
cmp ecx, 0xc
je 0x53d78f
cmp ecx, 0x19
je 0x53d511
cmp ecx, 0x8000001c
je 0x53d2ed
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 0x53d2b3
mov dword [esp + 0x284], ebp
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53d2a5
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 + 0x284]
mov ebx, ecx
mov dword [eax + 0x28], edx
lea ecx, [ebx + edx*8 - 8]
lea esi, [0x634dfc]
mov dword [ecx], esi
mov ecx, dword [0x776370]
lea edx, [ebx + edx*8 - 4]
test ecx, ecx
je 0x53d2dc
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, [0x634e38]
xor eax, eax
jmp 0x53d9c7
mov dword [esp + 0x200], 0
mov dword [esp + 0x204], 0
mov dword [esp + 0x208], 0
nop
lea eax, [0x5d2b00]
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 [0x776370]
test ebx, ebx
jne 0x53d345
mov ebx, dword [esp + 0x274]
jmp 0x53d353
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, [0x634b68]
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, [0x5b8b40]
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 0x53dfeb
lea eax, [0x5d6c80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x208]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jae 0x53df4c
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 [0x776370]
test eax, eax
jne 0x53d431
mov eax, dword [esp + 0x274]
jmp 0x53d44d
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 0x53d4d7
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53d4c7
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, [0x634e10]
mov dword [ecx], esi
mov ecx, dword [0x776370]
lea ebx, [ebp + ebx*8 - 4]
test ecx, ecx
je 0x53d500
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, [0x634e38]
xor eax, eax
jmp 0x53d9c7
lea edi, [esp + 0xe4]
xor eax, eax
call fcn.0046ac4e
nop
lea ecx, [0x5d2b00]
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 [0x776370]
test ebp, ebp
jne 0x53d556
mov eax, dword [esp + 0x274]
jmp 0x53d564
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, [0x634b68]
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, [0x5b8c40]
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 0x53e00f
lea eax, [0x5ddd60]
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 [0x776370]
test edx, edx
jne 0x53d601
mov edx, dword [esp + 0x274]
jmp 0x53d60f
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 [0x776370]
test eax, eax
je 0x53d66a
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 0x53d759
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53d749
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, [0x634e4c]
mov dword [ebx], ecx
mov ebx, dword [0x776370]
lea ebp, [esi + ebp*8 - 4]
test ebx, ebx
je 0x53d785
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 0x53e35c
lea edi, [esp + 0x1e8]
xor eax, eax
call fcn.0046ac5a
nop
lea ecx, [0x5d2b00]
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 [0x776370]
test ebp, ebp
jne 0x53d7d4
mov eax, dword [esp + 0x274]
jmp 0x53d7e2
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, [0x634b68]
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, [0x5b8a80]
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 0x53e0d2
lea eax, [0x5ddc20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x1f0]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jae 0x53e033
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 [0x776370]
test eax, eax
je 0x53d8c4
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 [0x776370]
test eax, eax
jne 0x53d909
mov eax, dword [esp + 0x274]
jmp 0x53d91c
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 0x53d992
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x5c7400]
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 [0x776370]
test eax, eax
je 0x53d982
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, [0x634c1c]
mov dword [ecx], esi
mov ecx, dword [0x776370]
lea ebx, [ebp + ebx*8 - 4]
test ecx, ecx
je 0x53d9bb
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, [0x634e38]
xor eax, eax
test eax, eax
jne 0x53d9e4
mov ecx, dword [esp + 0x2b0]
mov edx, dword [esp + 0x2b4]
lea ebp, [0x634bf4]
jmp 0x53c797
mov dword [esp + 0x260], eax
mov edx, dword [eax + 0x30]
test edx, edx
jl 0x53e295
mov ebx, dword [eax + 0x38]
test ebx, ebx
jl 0x53e1ec
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 0x53da52
add ebp, edi
adc ebx, edx
jmp 0x53da5c
mov ebx, 0x7fffffff
mov ebp, 0xffffffff
mov dword [esp + 0x164], ebp
mov dword [esp + 0x168], ebx
lea eax, [0x5dabe0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2b0]
mov dword [eax], ecx
mov edx, dword [0x776370]
test edx, edx
jne 0x53da98
mov edx, dword [esp + 0x2b4]
jmp 0x53daa6
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x2b4]
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 [0x776370]
test ebx, ebx
jne 0x53dafe
mov ebx, dword [esp + 0x260]
jmp 0x53db18
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, [0x634bf4]
mov dword [ebx + 0x4c], ebp
mov dword [ebx + 0x50], eax
jmp 0x53c797
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
mov dword [esp + 0x2a4], 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, [0x5c2d00]
mov dword [esp + 0x298], ecx
mov dword [esp + 0x29c], eax
mov eax, dword [esp + 0x234]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c2dc0]
mov dword [esp + 0x2a0], ecx
mov dword [esp + 0x2a4], eax
lea eax, [0x5fe855]
mov dword [esp], eax
mov dword [esp + 4], 0x75
lea eax, [esp + 0x298]
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 + 0x280], ecx
lea edx, [0x5d3800]
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 [0x776370]
test ecx, ecx
jne 0x53dc7e
mov ecx, dword [esp + 0x280]
jmp 0x53dc8c
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x280]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
mov dword [esp + 0x2a4], 0
mov eax, dword [esp + 0x198]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c2d00]
mov dword [esp + 0x298], ecx
mov dword [esp + 0x29c], eax
mov eax, dword [esp + 0x234]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c2dc0]
mov dword [esp + 0x2a0], ecx
mov dword [esp + 0x2a4], eax
lea eax, [0x5fe78a]
mov dword [esp], eax
mov dword [esp + 4], 0x65
lea eax, [esp + 0x298]
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 + 0x280], ecx
lea edx, [0x5d3800]
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 [0x776370]
test ecx, ecx
jne 0x53ddc6
mov ecx, dword [esp + 0x280]
jmp 0x53ddd4
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x280]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5fd6ad]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f65e9]
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, [0x5c2d00]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x776370]
test ecx, ecx
je 0x53dfc2
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 + 0x2b8], 0
lea eax, [0x634c08]
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], edx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f9f2a]
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, [0x5c2d00]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x776370]
test ecx, ecx
je 0x53e0a9
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 + 0x2b8], 0
lea eax, [0x634c08]
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], edx
add esp, 0x2ac
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f5339]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f3e9d]
mov dword [eax + 8], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [esp + 0x2b8], 0
lea ecx, [0x634c08]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x2bc], 0
mov dword [esp + 0x2c0], 0
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f4c88]
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, [0x5c2d80]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x776370]
test ecx, ecx
je 0x53e26c
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 + 0x2b8], 0
lea eax, [0x634c08]
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], edx
add esp, 0x2ac
ret
lea eax, [0x5d3800]
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, [0x5f36a2]
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, [0x5c2d80]
mov edx, dword [esp + 0x27c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x776370]
test ecx, ecx
je 0x53e315
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 + 0x2b8], 0
lea eax, [0x634c08]
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], edx
add esp, 0x2ac
ret
mov ebp, dword [esp + 0x174]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x26c]
lea ecx, [0x634e4c]
mov edx, dword [esp + 0x260]
cmp dword [edx + 0x44], ebx
jle 0x53e536
mov dword [esp + 0x174], ebx
lea edi, [esp + 0x50]
xor eax, eax
call fcn.0046ac4c
lea ecx, [0x634b68]
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, [0x5b8bc0]
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 0x53e512
lea eax, [0x5db4e0]
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 [0x776370]
test eax, eax
je 0x53e421
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 [0x776370]
test eax, eax
je 0x53e468
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 + 0x2b0]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x2b4]
mov dword [esp + 0xc], edx
call sym.debug_macho._File_.pushSection
mov eax, dword [esp + 0x10]
test eax, eax
je 0x53e33e
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, eax
lea esi, [0x634e38]
mov eax, edx
jmp 0x53d9c7
mov ebp, dword [esp + 0x178]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x26c]
lea ecx, [0x634e4c]
mov edx, dword [esp + 0x260]
cmp dword [edx + 0x44], ebx
jle 0x53e74f
mov dword [esp + 0x178], ebx
lea edi, [esp + 0xa0]
xor eax, eax
call fcn.0046ac4f
lea ecx, [0x634b68]
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, [0x5b8b80]
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 0x53e72b
lea eax, [0x5db4e0]
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 [0x776370]
test eax, eax
je 0x53e631
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 [0x776370]
test eax, eax
je 0x53e67b
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 + 0x2b0]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x2b4]
mov dword [esp + 0xc], edx
call sym.debug_macho._File_.pushSection
mov eax, dword [esp + 0x10]
test eax, eax
je 0x53e545
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
add esp, 0x2ac
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x2c0], eax
add esp, 0x2ac
ret
mov ecx, eax
lea esi, [0x634e38]
mov eax, edx
jmp 0x53d9c7
call sym.runtime.morestack_noctxt
jmp sym.debug_macho.NewFile