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

Disassembly:
mov ecx, dword [0x59be20]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xa4]
cmp eax, dword [ecx + 8]
jbe 0x4167e9
sub esp, 0x124
movzx eax, byte [0x59bd0e]
test al, al
jne 0x414cbb
lea eax, [0x4ace20]
mov dword [esp], eax
mov dword [esp + 4], 0x44
mov dword [esp + 8], 0x45
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [0x55d64c], 0x44
mov dword [0x55d650], 0x45
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x414c9c
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [0x55d648]
mov dword [edi + 4], edx
mov dword [0x55d648], eax
mov edx, dword [0x55d648]
movsd xmm0, qword [0x4e09dc]
movsd qword [edx], xmm0
mov eax, 1
jmp 0x414cd7
add esp, 0x124
ret
mov ebp, dword [0x55d648]
inc ebx
movzx ebx, bx
cvtsi2sd xmm0, ebx
movsd qword [ebp + eax*8], xmm0
inc eax
cmp eax, 0x44
jge 0x414cf5
mov ecx, dword [0x55d64c]
lea edx, [0x553840]
movzx ebx, word [edx + eax*2]
cmp eax, ecx
jb 0x414cc2
jmp 0x4167e3
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0x7ff00000
mov eax, dword [0x55d650]
mov ecx, dword [0x55d64c]
inc ecx
mov edx, dword [0x55d648]
movsd xmm0, qword [esp + 0xdc]
cmp eax, ecx
jae 0x414d91
movsd qword [esp + 0x24], xmm0
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x4ace20]
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 dword [0x55d650], eax
mov eax, dword [0x59bed8]
test eax, eax
je 0x414d7f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [0x55d648]
mov dword [edi + 4], eax
mov dword [0x55d648], ecx
movsd xmm0, qword [esp + 0x24]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov dword [0x55d64c], ecx
movsd qword [edx + ecx*8 - 8], xmm0
call sym.runtime.timeHistogramMetricsBuckets
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp]
mov dword [0x55d65c], eax
mov dword [0x55d660], ecx
mov eax, dword [0x59bed8]
test eax, eax
je 0x414dd3
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov eax, dword [0x55d658]
mov dword [edi + 4], eax
mov dword [0x55d658], edx
lea eax, [0x4ada80]
mov dword [esp], eax
mov dword [esp + 4], 0x38
mov dword [esp + 8], 0
call sym.runtime.makemap
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
lea ecx, [0x4ada80]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x4c18d8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x18
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x414e4b
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79a8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414e62
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414e5a
mov dword [esp + 0xd0], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c50a4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xd0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x414ec0
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79d4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414ed7
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414ecf
mov dword [esp + 0xcc], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c5883]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2a
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xcc]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x414f35
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a00]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414f4c
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414f44
mov dword [esp + 0xc8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c4bc5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x25
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x414faa
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a2c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414fc1
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414fb9
mov dword [esp + 0xc4], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c3f05]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x41501f
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a58]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415036
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41502e
mov dword [esp + 0xc0], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c3f26]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415094
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a78]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4150ab
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4150a3
mov dword [esp + 0xbc], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2e1a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xbc]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415109
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a7c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415120
or ecx, 4
mov eax, 1
test eax, eax
jle 0x415118
mov dword [esp + 0xb8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c5391]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x28
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x41517e
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a80]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415195
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41518d
mov dword [esp + 0xb4], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c5d5b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2c
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4151f3
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a84]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41520a
or ecx, 4
mov eax, 1
test eax, eax
jle 0x415202
mov dword [esp + 0xb0], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c50cb]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415268
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79ac]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41527f
or ecx, 4
mov eax, 1
test eax, eax
jle 0x415277
mov dword [esp + 0xac], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c33d8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1e
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xac]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4152dd
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79b0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4152f4
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4152ec
mov dword [esp + 0xa8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2e37]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415352
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79b4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415369
or ecx, 2
mov eax, 1
test eax, eax
jle 0x415361
mov dword [esp + 0xa4], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c33f6]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1e
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4153c7
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79b8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4153de
or ecx, 2
mov eax, 1
test eax, eax
jle 0x4153d6
mov dword [esp + 0xa0], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2590]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1b
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x41543c
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79bc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415453
or ecx, 2
mov eax, 1
test eax, eax
jle 0x41544b
mov dword [esp + 0x9c], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c227c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1a
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x9c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4154b1
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79c0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4154c8
or ecx, 8
mov eax, 1
test eax, eax
jle 0x4154c0
mov dword [esp + 0x98], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c0e77]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x98]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415526
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79c4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41553d
or ecx, 8
mov eax, 1
test eax, eax
jle 0x415535
mov dword [esp + 0x94], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4bff82]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x41559b
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79c8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4155b2
or ecx, 8
mov eax, 1
test eax, eax
jle 0x4155aa
mov dword [esp + 0x90], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c047c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415610
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79cc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415627
or ecx, 8
mov eax, 1
test eax, eax
jle 0x41561f
mov dword [esp + 0x8c], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c0490]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x8c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415685
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79d0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41569c
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415694
mov dword [esp + 0x88], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2e54]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x88]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4156fa
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79d8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415711
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415709
mov dword [esp + 0x84], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c09c2]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x15
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x84]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x41576f
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79dc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415786
or ecx, 1
mov eax, 1
test eax, eax
jle 0x41577e
mov dword [esp + 0x80], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c141a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x17
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x80]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4157e4
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79e0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4157fb
or ecx, 1
mov eax, 1
test eax, eax
jle 0x4157f3
mov dword [esp + 0x7c], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2a3e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415853
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79e4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41586a
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415862
mov dword [esp + 0x78], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c04a4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4158c2
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79e8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4158d9
or ecx, 1
mov eax, 1
test eax, eax
jle 0x4158d1
mov dword [esp + 0x74], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c0e8d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x74]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415931
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79ec]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415948
or ecx, 2
mov eax, 1
test eax, eax
jle 0x415940
mov dword [esp + 0x70], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4bff95]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4159a0
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79f0]
mov dword [eax + 8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c04b8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x4159f9
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79f4]
mov dword [eax + 8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4bf296]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x10
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415a52
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79f8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415a69
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415a61
mov dword [esp + 0x6c], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4bffa8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415ac1
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c79fc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415ad8
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415ad0
mov dword [esp + 0x68], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c18f0]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x18
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x68]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415b30
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a04]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415b47
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415b3f
mov dword [esp + 0x64], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2a5a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415b9f
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a08]
mov dword [eax + 8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c3f47]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415bf8
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a0c]
mov dword [eax + 8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4bfabb]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x12
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415c51
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a10]
mov dword [eax + 8], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c2e71]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415caa
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4c7a14]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415cc1
or ecx, 1
mov eax, 1
test eax, eax
jle 0x415cb9
mov dword [esp + 0x60], ecx
lea eax, [0x4ada80]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4c37c4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1f
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59bed8]
test ecx, ecx
je 0x415d19
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.runtime.initMetrics