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

Disassembly:
mov ecx, dword [0x59ec64]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x9c]
cmp eax, dword [ecx + 8]
jbe 0x415a17
sub esp, 0x11c
movzx eax, byte [0x59eb4e]
test al, al
jne 0x41404c
lea eax, [0x4be420]
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 [0x579eac], 0x44
mov dword [0x579eb0], 0x45
mov ecx, dword [0x59ed50]
test ecx, ecx
je 0x41402c
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [0x579ea8]
mov dword [edi + 4], ecx
mov dword [0x579ea8], eax
mov eax, dword [0x579ea8]
mov dword [eax], 0
mov dword [eax + 4], 0x3ff00000
mov eax, 1
jmp 0x41406a
add esp, 0x11c
ret
mov ecx, dword [0x579ea8]
lea ecx, [ecx + eax*8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov dword [ecx], edx
mov dword [ecx + 4], ebx
inc eax
cmp eax, 0x44
jge 0x4140a2
mov dword [esp + 0xd4], eax
lea ecx, [0x56f820]
movzx edx, word [ecx + eax*2]
inc edx
movzx edx, dx
mov dword [esp], edx
call sym.runtime.fint32to64
mov ecx, dword [0x579eac]
mov eax, dword [esp + 0xd4]
cmp eax, ecx
jb 0x414053
jmp 0x415a11
mov eax, dword [0x579eb0]
mov ecx, dword [0x579eac]
inc ecx
mov edx, dword [0x579ea8]
cmp eax, ecx
jae 0x414113
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x4be420]
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 [0x579eb0], eax
mov eax, dword [0x59ed50]
test eax, eax
je 0x414107
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [0x579ea8]
mov dword [edi + 4], eax
mov dword [0x579ea8], ecx
mov eax, ecx
mov ecx, edx
mov edx, eax
mov dword [0x579eac], ecx
lea eax, [edx + ecx*8 - 8]
mov dword [eax], 0
lea eax, [edx + ecx*8 - 4]
mov dword [eax], 0x7ff00000
call sym.runtime.timeHistogramMetricsBuckets
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp]
mov dword [0x579ebc], eax
mov dword [0x579ec0], ecx
mov eax, dword [0x59ed50]
test eax, eax
je 0x414163
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov eax, dword [0x579eb8]
mov dword [edi + 4], eax
mov dword [0x579eb8], edx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov dword [esp + 4], 0x34
mov dword [esp + 8], 0
call sym.runtime.makemap
mov eax, dword [esp + 0xc]
mov dword [esp + 0xf8], eax
lea ecx, [0x4bf3e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x4d4854]
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 [0x59ed50]
test ecx, ecx
je 0x4141db
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacd8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4141f2
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4141ea
mov dword [esp + 0xc8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d8079]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
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 [0x59ed50]
test ecx, ecx
je 0x414250
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad04]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414267
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41425f
mov dword [esp + 0xc4], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d887f]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2a
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 [0x59ed50]
test ecx, ecx
je 0x4142c5
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad30]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4142dc
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4142d4
mov dword [esp + 0xc0], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d7b73]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x25
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 [0x59ed50]
test ecx, ecx
je 0x41433a
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad5c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414351
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414349
mov dword [esp + 0xbc], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d6e47]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
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 [0x59ed50]
test ecx, ecx
je 0x4143af
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad88]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4143c6
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4143be
mov dword [esp + 0xb8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d6e68]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
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 [0x59ed50]
test ecx, ecx
je 0x414424
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad98]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41443b
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414433
mov dword [esp + 0xb4], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5ddd]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
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 [0x59ed50]
test ecx, ecx
je 0x414499
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad9c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4144b0
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4144a8
mov dword [esp + 0xb0], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d838e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x28
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 [0x59ed50]
test ecx, ecx
je 0x41450e
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dada0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414525
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41451d
mov dword [esp + 0xac], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d8d83]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2c
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 [0x59ed50]
test ecx, ecx
je 0x414583
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dada4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41459a
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414592
mov dword [esp + 0xa8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d80a0]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
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 [0x59ed50]
test ecx, ecx
je 0x4145f8
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacdc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41460f
or ecx, 4
mov eax, 1
test eax, eax
jle 0x414607
mov dword [esp + 0xa4], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d63b8]
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 [0x59ed50]
test ecx, ecx
je 0x41466d
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dace0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414684
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41467c
mov dword [esp + 0xa0], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5dfa]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
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 [0x59ed50]
test ecx, ecx
je 0x4146e2
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dace4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4146f9
or ecx, 2
mov eax, 1
test eax, eax
jle 0x4146f1
mov dword [esp + 0x9c], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d63d6]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1e
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 [0x59ed50]
test ecx, ecx
je 0x414757
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dace8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41476e
or ecx, 2
mov eax, 1
test eax, eax
jle 0x414766
mov dword [esp + 0x98], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d551d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1b
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 [0x59ed50]
test ecx, ecx
je 0x4147cc
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacec]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4147e3
or ecx, 2
mov eax, 1
test eax, eax
jle 0x4147db
mov dword [esp + 0x94], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d520a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1a
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 [0x59ed50]
test ecx, ecx
je 0x414841
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacf0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414858
or ecx, 8
mov eax, 1
test eax, eax
jle 0x414850
mov dword [esp + 0x90], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d3d58]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
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 [0x59ed50]
test ecx, ecx
je 0x4148b6
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacf4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4148cd
or ecx, 8
mov eax, 1
test eax, eax
jle 0x4148c5
mov dword [esp + 0x8c], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d2e18]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
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 [0x59ed50]
test ecx, ecx
je 0x41492b
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacf8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414942
or ecx, 8
mov eax, 1
test eax, eax
jle 0x41493a
mov dword [esp + 0x88], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d3323]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
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 [0x59ed50]
test ecx, ecx
je 0x4149a0
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dacfc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4149b7
or ecx, 8
mov eax, 1
test eax, eax
jle 0x4149af
mov dword [esp + 0x84], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d3337]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
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 [0x59ed50]
test ecx, ecx
je 0x414a15
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad00]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414a2c
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414a24
mov dword [esp + 0x80], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5e17]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
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 [0x59ed50]
test ecx, ecx
je 0x414a8a
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad08]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414aa1
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414a99
mov dword [esp + 0x7c], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d3852]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x15
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 [0x59ed50]
test ecx, ecx
je 0x414af9
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad0c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414b10
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414b08
mov dword [esp + 0x78], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d437e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x17
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 [0x59ed50]
test ecx, ecx
je 0x414b68
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad10]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414b7f
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414b77
mov dword [esp + 0x74], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5a1d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
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 [0x59ed50]
test ecx, ecx
je 0x414bd7
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad14]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414bee
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414be6
mov dword [esp + 0x70], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d334b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
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 [0x59ed50]
test ecx, ecx
je 0x414c46
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad18]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414c5d
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414c55
mov dword [esp + 0x6c], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d3d6e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
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 [0x59ed50]
test ecx, ecx
je 0x414cb5
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad1c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414ccc
or ecx, 2
mov eax, 1
test eax, eax
jle 0x414cc4
mov dword [esp + 0x68], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d2e2b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
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 [0x59ed50]
test ecx, ecx
je 0x414d24
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad20]
mov dword [eax + 8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d335f]
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 [0x59ed50]
test ecx, ecx
je 0x414d7d
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad24]
mov dword [eax + 8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d2072]
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 [0x59ed50]
test ecx, ecx
je 0x414dd6
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad28]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414ded
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414de5
mov dword [esp + 0x64], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d2e3e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
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 [0x59ed50]
test ecx, ecx
je 0x414e45
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad2c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414e5c
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414e54
mov dword [esp + 0x60], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d486c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x18
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 [0x59ed50]
test ecx, ecx
je 0x414eb4
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad34]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x414ecb
or ecx, 1
mov eax, 1
test eax, eax
jle 0x414ec3
mov dword [esp + 0x5c], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5a39]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59ed50]
test ecx, ecx
je 0x414f23
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad38]
mov dword [eax + 8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d6e89]
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 [0x59ed50]
test ecx, ecx
je 0x414f7c
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad3c]
mov dword [eax + 8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d28f7]
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 [0x59ed50]
test ecx, ecx
je 0x414fd5
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad40]
mov dword [eax + 8], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d5e34]
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 [0x59ed50]
test ecx, ecx
je 0x41502e
mov ecx, dword [eax + 8]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
lea ecx, [0x4dad44]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x415045
or ecx, 1
mov eax, 1
test eax, eax
jle 0x41503d
mov dword [esp + 0x58], ecx
lea eax, [0x4bf3e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x4d6768]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1f
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x59ed50]
test ecx, ecx
je 0x41509d
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.runtime.initMetrics