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

Disassembly:
mov ecx, dword [0x7a1414]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x44]
cmp eax, dword [ecx + 8]
jbe 0x54dad5
sub esp, 0xc4
mov ecx, dword [esp + 0xcc]
mov edx, dword [ecx + 0x34]
test edx, edx
je 0x54be5f
lea ebx, [0x5d78a0]
cmp dword [edx], ebx
jne 0x54be5b
mov ebp, dword [edx + 4]
jmp 0x54be67
xor ebp, ebp
jmp 0x54be67
lea ebx, [0x5d78a0]
xor ebp, ebp
mov ebp, dword [ebp + 0x14]
test ebp, ebp
je 0x54c13f
test edx, edx
je 0x54be83
cmp dword [edx], ebx
jne 0x54be7f
mov edx, dword [edx + 4]
jmp 0x54be85
xor edx, edx
jmp 0x54be85
xor edx, edx
mov edx, dword [edx + 0x14]
mov edx, dword [edx + 4]
test edx, edx
je 0x54c13f
lea edi, [esp + 0x70]
xor eax, eax
call fcn.00468278
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x78], edx
mov ebp, dword [esp + 0xd0]
mov dword [esp + 0x74], ebp
mov ebp, dword [edx + 0x34]
test ebp, ebp
je 0x54bed4
cmp dword [ebp], ebx
jne 0x54bed0
mov ebp, dword [ebp + 4]
jmp 0x54bed6
xor ebp, ebp
jmp 0x54bed6
xor ebp, ebp
mov ebp, dword [ebp + 0x14]
mov dword [esp + 0x5c], ebp
mov esi, dword [ebp + 0x40]
mov edi, dword [ebp + 0x44]
cmp esi, 0xfffffff8
sete cl
cmp edi, 0xffffffff
sete dl
and edx, ecx
test dl, dl
je 0x54bf22
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0x40
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
xor eax, eax
lea ebx, [0x5d78a0]
mov ebp, dword [esp + 0x5c]
xor esi, esi
xor edi, edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], esi
test esi, 7
je 0x54bfd7
mov eax, dword [esp + 0x70]
mov dword [esp + 0x6c], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x20]
mov dword [esp], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 4], edx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5c9340]
mov edx, dword [esp + 0xb0]
mov dword [edx], ecx
mov ebx, dword [0x7a14d8]
test ebx, ebx
je 0x54bf95
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebx, dword [edx + 4]
mov dword [edi + 4], ebx
mov dword [edx + 4], eax
mov eax, dword [esp + 0x6c]
inc dword [eax + 0x90]
mov eax, dword [eax + 0x80]
mov ecx, dword [eax]
lea ebx, [0x5f91f5]
mov dword [esp], ebx
mov dword [esp + 4], 0x21
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov edx, eax
call ecx
mov ebp, dword [esp + 0x5c]
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x40
je 0x54c0bb
mov ecx, dword [esp + 0x20]
test ecx, ecx
setne bl
mov ebp, dword [esp + 0x24]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x54c0bf
mov eax, dword [esp + 0x70]
mov dword [esp + 0x68], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0x20]
mov dword [esp], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 4], edx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5c9340]
mov edx, dword [esp + 0xac]
mov dword [edx], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
je 0x54c077
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 4]
mov dword [edi + 4], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0x68]
inc dword [eax + 0x90]
mov eax, dword [eax + 0x80]
mov ecx, dword [eax]
lea ebx, [0x5fe9fc]
mov dword [esp], ebx
mov dword [esp + 4], 0x35
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov edx, eax
call ecx
mov ecx, dword [esp + 0x20]
jmp 0x54c0bf
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x78]
mov ebx, dword [ebx + 0x34]
test ebx, ebx
je 0x54c0dd
lea ebp, [0x5d78a0]
cmp dword [ebx], ebp
jne 0x54c0d9
mov ebx, dword [ebx + 4]
jmp 0x54c0e5
xor ebx, ebx
jmp 0x54c0e5
lea ebp, [0x5d78a0]
xor ebx, ebx
mov esi, dword [esp + 0x5c]
mov eax, dword [esi + 0x4c]
mov edx, ecx
lea ecx, [0x5c92c0]
cmp eax, ecx
jne 0x54dabe
mov ecx, dword [esi + 0x50]
mov ecx, dword [ecx]
mov dword [ebx], ecx
mov ecx, dword [esp + 0x78]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x54c11b
cmp dword [ecx], ebp
jne 0x54c117
mov ecx, dword [ecx + 4]
jmp 0x54c11d
xor ecx, ecx
jmp 0x54c11d
xor ecx, ecx
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x78]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x54c138
cmp dword [ecx], ebp
jne 0x54c134
mov ecx, dword [ecx + 4]
jmp 0x54c13a
xor ecx, ecx
jmp 0x54c13a
xor ecx, ecx
mov ecx, dword [ecx + 0x14]
jmp 0x54c149
add esp, 0xc4
ret
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x54c472
movzx ebx, word [ecx + 0x74]
cmp bx, 0x207c
jg 0x54c315
cmp bx, 0x2032
jg 0x54c28b
cmp bx, 0xa
jg 0x54c1ac
cmp bx, 6
jg 0x54c18c
lea esi, [ebx - 1]
cmp si, 2
jbe 0x54c1f2
cmp bx, 6
je 0x54c21a
jmp 0x54c146
cmp bx, 7
je 0x54c146
cmp bx, 0xa
jne 0x54c146
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x54c146
movzx esi, word [ebx + 0x7a]
or esi, 1
mov word [ebx + 0x7a], si
jmp 0x54c146
cmp bx, 0x2029
jg 0x54c1eb
cmp bx, 0xc
jne 0x54c1df
movzx ebx, word [ecx + 0x7a]
or ebx, 0x43
mov word [ecx + 0x7a], bx
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x54c146
movzx esi, word [ebx + 0x7a]
or esi, 1
mov word [ebx + 0x7a], si
jmp 0x54c146
cmp bx, 0x2029
je 0x54c21a
jmp 0x54c146
cmp bx, 0x202a
jne 0x54c21a
mov ebx, dword [esp + 0x78]
mov ebx, dword [ebx + 0x34]
test ebx, ebx
je 0x54c20a
cmp dword [ebx], ebp
jne 0x54c206
mov ebx, dword [ebx + 4]
jmp 0x54c20c
xor ebx, ebx
jmp 0x54c20c
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
movzx esi, word [ebx + 0x7a]
and esi, 0xfffffffd
mov word [ebx + 0x7a], si
movzx ebx, word [ecx + 0x7a]
mov esi, ebx
or ebx, 8
mov word [ecx + 0x7a], bx
cmp byte [ecx + 0x3a], 1
jne 0x54c247
mov ebx, dword [ecx + 0x4c]
test ebx, ebx
je 0x54c247
lea ebp, [0x5de540]
cmp ebx, ebp
jne 0x54daa8
mov ebx, dword [ecx + 0x50]
jmp 0x54c24f
lea ebp, [0x5de540]
xor ebx, ebx
test ebx, ebx
je 0x54c267
movzx esi, word [ebx + 0x7a]
test si, 2
jne 0x54c26e
or esi, 1
mov word [ebx + 0x7a], si
jmp 0x54c26e
or esi, 9
mov word [ecx + 0x7a], si
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x54c280
movzx esi, word [ebx + 0x7a]
or esi, 1
mov word [ebx + 0x7a], si
lea ebp, [0x5d78a0]
jmp 0x54c146
cmp bx, 0x2065
jg 0x54c2d7
cmp bx, 0x205b
jg 0x54c2c4
lea esi, [ebx - 0x2054]
cmp si, 3
jbe 0x54c345
cmp bx, 0x205a
jl 0x54c146
movzx ebx, word [ecx + 0x7a]
or ebx, 0x24
mov word [ecx + 0x7a], bx
jmp 0x54c146
cmp bx, 0x2061
jle 0x54c345
cmp bx, 0x2064
jge 0x54c345
jmp 0x54c146
cmp bx, 0x206c
jg 0x54c2f1
cmp bx, 0x2068
je 0x54c345
cmp bx, 0x206a
jge 0x54c345
jmp 0x54c146
lea esi, [ebx - 0x206f]
cmp si, 1
jbe 0x54c345
lea esi, [ebx - 0x2073]
cmp si, 1
jbe 0x54c345
cmp bx, 0x2077
jge 0x54c345
jmp 0x54c146
cmp bx, 0x20c6
jg 0x54c3ce
cmp bx, 0x208f
jg 0x54c370
cmp bx, 0x2086
jg 0x54c355
lea esi, [ebx - 0x207f]
cmp si, 1
jbe 0x54c345
cmp bx, 0x2083
jl 0x54c146
movzx ebx, word [ecx + 0x7a]
or ebx, 4
mov word [ecx + 0x7a], bx
jmp 0x54c146
cmp bx, 0x208b
je 0x54c462
cmp bx, 0x208e
jge 0x54c462
jmp 0x54c146
cmp bx, 0x20b1
jg 0x54c3b3
cmp bx, 0x209b
je 0x54c420
cmp bx, 0x20b1
jne 0x54c146
cmp byte [ecx + 0x3a], 7
jne 0x54c146
cmp word [ecx + 0x34], 0x1000
jne 0x54c146
movzx ebx, word [ecx + 0x7a]
or ebx, 0x41
mov word [ecx + 0x7a], bx
jmp 0x54c146
cmp bx, 0x20ba
je 0x54c462
cmp bx, 0x20c6
je 0x54c462
jmp 0x54c146
cmp bx, 0x20f2
jg 0x54c407
cmp bx, 0x20de
jg 0x54c3ef
cmp bx, 0x20c9
je 0x54c462
cmp bx, 0x20de
je 0x54c462
jmp 0x54c146
lea esi, [ebx - 0x20e2]
cmp si, 0xd
jbe 0x54c462
cmp bx, 0x20f1
jge 0x54c462
jmp 0x54c146
cmp bx, 0x2129
jg 0x54c444
cmp bx, 0x2127
je 0x54c420
cmp bx, 0x2129
jne 0x54c146
cmp word [ecx + 8], 0x10c0
jge 0x54c434
cmp word [ecx + 0x34], 0x10c0
jl 0x54c146
movzx ebx, word [ecx + 0x7a]
or ebx, 0x41
mov word [ecx + 0x7a], bx
jmp 0x54c146
cmp bx, 0x2133
je 0x54c462
lea esi, [ebx - 0x2147]
cmp si, 4
jbe 0x54c462
cmp bx, 0x215a
jne 0x54c146
movzx ebx, word [ecx + 0x7a]
or ebx, 0x41
mov word [ecx + 0x7a], bx
jmp 0x54c146
mov ecx, dword [esp + 0x78]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x54c48a
cmp dword [ecx], ebp
jne 0x54c486
mov ecx, dword [ecx + 4]
jmp 0x54c48c
xor ecx, ecx
jmp 0x54c48c
xor ecx, ecx
mov ecx, dword [ecx + 0x14]
xor eax, eax
jmp 0x54c498
mov ecx, dword [ecx + 4]
mov eax, ebx
test ecx, ecx
je 0x54da6a
mov dword [esp + 0x50], ecx
movzx ebx, word [ecx + 0x74]
cmp bx, 0xb
jg 0x54c907
mov dword [esp + 0x2c], eax
cmp bx, 0xa
jne 0x54c8a1
cmp byte [ecx + 0xe], 4
je 0x54c80f
mov ebx, dword [esp + 0x78]
mov ebx, dword [ebx + 0x34]
test ebx, ebx
je 0x54c4e2
cmp dword [ebx], ebp
jne 0x54c4de
mov ebx, dword [ebx + 4]
jmp 0x54c4e4
xor ebx, ebx
jmp 0x54c4e4
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
movzx ebx, word [ebx + 0x7a]
mov esi, dword [ecx + 0x48]
mov dword [esp + 0x4c], esi
test bx, 2
je 0x54c664
test eax, eax
jne 0x54c5a1
mov word [ecx + 0x74], 6
mov ebx, dword [0x7a14d8]
lea edi, [ecx + 8]
test ebx, ebx
je 0x54c54e
mov dword [esp + 0xa8], edi
lea eax, [0x5da860]
mov dword [esp], eax
mov dword [esp + 4], edi
call sym.runtime.wbZero
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0xa8]
mov ebx, eax
xor eax, eax
call fcn.00468278
test esi, esi
je 0x54c583
mov ecx, dword [esp + 0x50]
mov byte [ecx + 0x3a], 1
mov edi, dword [0x7a14d8]
test edi, edi
je 0x54c57e
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov edx, dword [ecx + 0x48]
mov dword [edi + 4], edx
mov edx, dword [esp + 0x20]
mov dword [ecx + 0x48], esi
jmp 0x54c591
mov ecx, dword [esp + 0x50]
mov byte [ecx + 0x3a], 7
mov word [ecx + 0x34], 0x1408
movzx esi, word [ecx + 0x7a]
or esi, 8
mov word [ecx + 0x7a], si
jmp 0x54d850
mov word [ecx + 0x74], 0x200e
mov byte [ecx + 0xe], 4
mov dword [ecx + 0x14], eax
mov ebx, eax
sar eax, 0x1f
mov dword [ecx + 0x18], eax
mov byte [ecx + 0x3a], 7
mov word [ecx + 0x34], 0x1001
neg ebx
mov dword [ecx + 0x70], ebx
mov edx, dword [esp + 0x74]
mov ebx, dword [edx]
call ebx
mov eax, dword [esp]
mov word [eax + 0x74], 6
mov ecx, dword [esp + 0x50]
mov ebx, dword [ecx + 0x68]
mov ebp, dword [ecx + 0x6c]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ebp
mov ebx, dword [esp + 0x4c]
test ebx, ebx
je 0x54c60e
mov byte [eax + 0x3a], 1
mov ebp, dword [0x7a14d8]
test ebp, ebp
je 0x54c609
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [eax + 0x48]
mov dword [edi + 4], ebp
mov dword [eax + 0x48], ebx
jmp 0x54c618
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1408
movzx ebx, word [eax + 0x7a]
or ebx, 8
mov word [eax + 0x7a], bx
mov ebx, dword [esp + 0x2c]
mov dword [eax + 0x70], ebx
mov ebp, dword [0x7a14d8]
mov esi, dword [ecx + 4]
test ebp, ebp
je 0x54c64d
call sym.runtime.gcWriteBarrier4
mov dword [edi], esi
mov ebp, dword [eax + 4]
mov dword [edi + 4], ebp
mov dword [edi + 8], eax
mov ebp, dword [ecx + 4]
mov dword [edi + 0xc], ebp
mov dword [eax + 4], esi
mov dword [ecx + 4], eax
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
jmp 0x54d850
mov word [ecx + 0x74], 0x2127
mov byte [ecx + 0xe], 3
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x18], 0
mov word [ecx + 8], 0x1001
mov byte [ecx + 0x3a], 7
mov word [ecx + 0x34], 0x101f
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
mov word [eax + 0x74], 0x2127
mov ecx, dword [esp + 0x50]
mov ebx, dword [ecx + 0x6c]
mov ebp, dword [ecx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ebx
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x101f
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1408
mov ebx, dword [0x7a14d8]
mov ebp, dword [ecx + 4]
test ebx, ebx
je 0x54c6e4
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ebx, dword [eax + 4]
mov dword [edi + 4], ebx
mov dword [edi + 8], eax
mov ebx, dword [ecx + 4]
mov dword [edi + 0xc], ebx
mov dword [esp + 0x50], eax
mov dword [eax + 4], ebp
mov dword [ecx + 4], eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x54c768
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
mov word [eax + 0x74], 0x200e
mov ecx, dword [esp + 0x50]
mov ebx, dword [ecx + 0x6c]
mov ebp, dword [ecx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ebx
mov byte [eax + 0xe], 4
mov ebx, dword [esp + 0x2c]
mov dword [eax + 0x14], ebx
mov ebp, ebx
sar ebx, 0x1f
mov dword [eax + 0x18], ebx
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1001
mov ebx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [eax + 0x70], ebp
mov ebp, dword [0x7a14d8]
mov esi, dword [ecx + 4]
test ebp, ebp
je 0x54c762
call sym.runtime.gcWriteBarrier4
mov dword [edi], esi
mov ebp, dword [eax + 4]
mov dword [edi + 4], ebp
mov dword [edi + 8], eax
mov ebp, dword [ecx + 4]
mov dword [edi + 0xc], ebp
mov dword [eax + 4], esi
mov dword [ecx + 4], eax
mov dword [esp + 0x54], eax
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
mov word [eax + 0x74], 6
mov ecx, dword [esp + 0x50]
mov ebx, dword [ecx + 0x68]
mov ebp, dword [ecx + 0x6c]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ebp
mov ebx, dword [esp + 0x4c]
test ebx, ebx
je 0x54c7b5
mov byte [eax + 0x3a], 1
mov ebp, dword [0x7a14d8]
test ebp, ebp
je 0x54c7b0
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [eax + 0x48]
mov dword [edi + 4], ebp
mov dword [eax + 0x48], ebx
jmp 0x54c7bf
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1408
movzx ebx, word [eax + 0x7a]
or ebx, 8
mov word [eax + 0x7a], bx
mov ebx, dword [esp + 0x2c]
mov dword [eax + 0x70], ebx
mov ebp, dword [0x7a14d8]
mov esi, dword [esp + 0x54]
mov edx, dword [esi + 4]
test ebp, ebp
je 0x54c7f8
call sym.runtime.gcWriteBarrier4
mov dword [edi], edx
mov ebp, dword [eax + 4]
mov dword [edi + 4], ebp
mov dword [edi + 8], eax
mov ebp, dword [esi + 4]
mov dword [edi + 0xc], ebp
mov dword [eax + 4], edx
mov dword [esi + 4], eax
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
jmp 0x54d850
mov eax, dword [esp + 0x70]
mov dword [esp + 0x64], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov edx, dword [0x7a14d8]
test edx, edx
jne 0x54c841
mov ebx, dword [esp + 0x50]
jmp 0x54c84c
call sym.runtime.gcWriteBarrier1
mov ebx, dword [esp + 0x50]
mov dword [edi], ebx
mov dword [eax + 4], ebx
mov ecx, dword [esp + 0x64]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebp, [0x5f9cf5]
mov dword [esp], ebp
mov dword [esp + 4], 0x23
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x2c]
jmp 0x54d850
cmp bx, 0xb
jne 0x54c97b
mov eax, dword [esp + 0xcc]
lea ecx, [eax + 0xc]
mov dword [esp], ecx
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 8
je 0x54c8de
mov ecx, dword [esp + 0x50]
mov word [ecx + 0x74], 0x2127
mov byte [ecx + 0xe], 7
mov word [ecx + 8], 0x1408
jmp 0x54c8f2
mov ecx, dword [esp + 0x50]
mov word [ecx + 0x74], 0x2127
mov byte [ecx + 0xe], 3
mov word [ecx + 8], 0x1001
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
mov ebx, dword [esp + 0x2c]
jmp 0x54d850
cmp bx, 0xc
je 0x54c984
cmp bx, 0x200e
jne 0x54c93b
cmp byte [ecx + 0x3a], 7
jne 0x54c932
cmp word [ecx + 0x34], 0x1001
jne 0x54c932
cmp byte [ecx + 0xe], 4
jne 0x54c932
mov ebx, dword [ecx + 0x14]
xor esi, esi
sub esi, ebx
mov dword [ecx + 0x70], esi
mov ebx, eax
xor eax, eax
jmp 0x54d850
cmp bx, 0x2128
jne 0x54c97b
cmp byte [ecx + 0x3a], 3
jne 0x54c95a
cmp word [ecx + 0x34], 0x1001
jne 0x54c95a
mov ebx, dword [ecx + 0x40]
xor esi, esi
sub esi, ebx
mov dword [ecx + 0x70], esi
cmp byte [ecx + 0xe], 3
jne 0x54c972
cmp word [ecx + 8], 0x1001
jne 0x54c972
mov ebx, dword [ecx + 0x14]
xor esi, esi
sub esi, ebx
mov dword [ecx + 0x70], esi
mov ebx, eax
xor eax, eax
jmp 0x54d850
mov ebx, eax
xor eax, eax
jmp 0x54d850
movzx eax, word [ecx + 0x7a]
test ax, 2
je 0x54c9b3
test edx, edx
jne 0x54c9b3
mov eax, dword [ecx + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0x40
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x40
je 0x54c9d6
mov ecx, dword [esp + 0x20]
mov esi, ecx
jmp 0x54c9e9
mov eax, dword [esp + 0x70]
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0x20]
lea esi, [ecx + eax]
mov dword [esp + 0x44], esi
mov eax, dword [esp + 0x50]
movzx ebx, word [eax + 0x7a]
test bx, 2
je 0x54ca2d
cmp esi, 0x80
jge 0x54ca2d
mov ecx, dword [eax + 0x1c]
test byte [ecx], al
add ecx, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 4
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x44]
mov dword [eax + 0x40], esi
mov ebx, esi
sar esi, 0x1f
mov dword [esp + 0x40], esi
mov dword [eax + 0x44], esi
movzx ebp, byte [0x7a12fd]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x54ca50
xor edx, edx
jmp 0x54cb77
mov ebp, dword [esp + 0x70]
movzx ebp, byte [ebp + 0x18]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x54cb75
mov ebp, dword [esp + 0x78]
mov edi, dword [ebp + 4]
mov dword [esp + 0x28], edi
mov ebp, dword [ebp]
mov dword [esp + 0x60], ebp
cmp edi, 0x10
jne 0x54cad5
mov dword [esp], ebp
lea eax, [0x5f09f6]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
je 0x54cab6
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov edx, 1
jmp 0x54cb70
mov eax, dword [esp + 0x28]
cmp eax, 0x10
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x28]
jne 0x54cb29
mov dword [esp], ebp
lea eax, [0x5f0a06]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
je 0x54cb11
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov edx, 1
jmp 0x54cb70
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x28]
cmp edi, 0xc
jge 0x54cb32
xor edx, edx
jmp 0x54cb63
mov dword [esp], ebp
lea eax, [0x5ee395]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov edx, eax
mov eax, dword [esp + 0x50]
test dl, dl
je 0x54cb6e
mov edx, 1
jmp 0x54cb70
xor edx, edx
xor edx, 1
jmp 0x54cb77
xor edx, edx
test dl, dl
jne 0x54cb82
mov edx, eax
jmp 0x54ce2f
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x50]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54cbb6
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x20f1
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ecx
mov byte [eax + 0xe], 4
mov dword [eax + 0x14], 0x3c4c0000
mov dword [eax + 0x18], 0
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54cc2a
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x20f1
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x6c]
mov ebx, dword [ecx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], edx
mov byte [eax + 0xe], 4
mov dword [eax + 0x14], 0x38420000
mov dword [eax + 0x18], 0
mov edx, dword [esp + 0x78]
mov dword [esp + 0x48], edx
mov ebx, dword [edx + 0x28]
test ebx, ebx
jne 0x54ccd7
lea eax, [0x5d6ee0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 4
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0x2c], 0
mov dword [ecx + 0x30], 4
mov edx, dword [0x7a14d8]
test edx, edx
je 0x54ccc5
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [ecx + 0x28]
mov dword [edi + 4], edx
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
mov ebx, dword [edx + 0x30]
mov ebp, dword [edx + 0x2c]
inc ebp
mov esi, dword [edx + 0x28]
cmp ebx, ebp
jae 0x54cd45
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5d6ee0]
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 + 0x48]
mov dword [ebx + 0x30], eax
mov eax, dword [0x7a14d8]
test eax, eax
je 0x54cd31
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x28]
mov dword [edi + 4], ebp
mov dword [ebx + 0x28], ecx
mov eax, dword [esp + 0xa4]
mov ebp, edx
mov esi, ecx
mov ecx, dword [esp + 0x50]
mov edx, ebx
mov dword [edx + 0x2c], ebp
mov ebx, dword [0x7a14d8]
lea ebp, [ebp + ebp*4]
lea edi, [esi + ebp*4 - 0x14]
test ebx, ebx
je 0x54cd89
mov dword [esp + 0xa0], edi
lea eax, [0x5d6ee0]
mov dword [esp], eax
mov dword [esp + 4], edi
call sym.runtime.wbZero
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
mov edi, dword [esp + 0xa0]
xor eax, eax
call fcn.0046827b
mov ecx, dword [edx + 0x2c]
lea ebp, [ecx - 1]
cmp ecx, ebp
jbe 0x54daa1
lea eax, [ecx + ecx*4]
mov dword [esp + 0x3c], eax
mov ecx, dword [edx + 0x28]
mov dword [esp + 0xa0], ecx
mov dword [ecx + eax*4 - 0x14], 0
lea edx, [ecx + eax*4 - 0x10]
mov byte [edx], 8
mov edx, dword [esp + 0x70]
mov dword [esp], edx
lea edx, [0x5e724a]
mov dword [esp + 4], edx
mov dword [esp + 8], 5
mov dword [esp + 0xc], 0
call sym.cmd_internal_obj._Link_.LookupInit
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xa0]
lea ebx, [edx + ecx*4 - 0xe]
mov ebp, dword [esp + 0x10]
test eax, eax
je 0x54ce0f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebp
mov eax, dword [edx + ecx*4 - 4]
mov dword [edi + 4], eax
mov dword [edx + ecx*4 - 4], ebp
mov word [ebx], 0x37
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xa4], eax
mov ebp, dword [esp + 0x78]
mov ebp, dword [ebp + 0x34]
test ebp, ebp
je 0x54ce55
lea edi, [0x5d78a0]
cmp dword [ebp], edi
jne 0x54ce51
mov ebp, dword [ebp + 4]
jmp 0x54ce57
xor ebp, ebp
jmp 0x54ce57
xor ebp, ebp
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 4
je 0x54ce7e
mov eax, dword [esp + 0xa4]
jmp 0x54cea1
lea eax, [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
call sym.cmd_internal_obj_ppc64._ctxt9_.stacksplit
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x54d1c8
mov dword [esp + 0x9c], eax
lea ebx, [ecx + 0x7ff8]
cmp ebx, 0xfff0
ja 0x54cfce
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54cefd
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov ecx, dword [esp + 0x50]
mov ebx, dword [ecx + 0x6c]
mov ebp, dword [ecx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ebx
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1408
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x101f
mov edx, dword [esp + 0x74]
mov ebx, dword [edx]
call ebx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54cf77
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [esp + 0x44]
mov ebp, ecx
neg ecx
mov esi, ecx
sar ecx, 0x1f
mov edi, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], edi
mov word [eax + 0x74], 0x2128
mov edi, dword [esp + 0x50]
mov edx, dword [edi + 0x6c]
mov edi, dword [edi + 0x68]
mov dword [eax + 0x68], edi
mov dword [eax + 0x6c], edx
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x101f
mov byte [eax + 0x3a], 3
mov dword [eax + 0x40], esi
mov dword [eax + 0x44], ecx
mov word [eax + 0x34], 0x1001
mov dword [eax + 0x70], ebp
jmp 0x54d1b0
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d005
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x6c]
mov ebx, dword [ecx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], edx
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1408
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x101d
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call sym.cmd_internal_obj._Link_.StartUnsafePoint
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa4], eax
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov edx, dword [esp + 0xa4]
mov ebx, dword [edx + 4]
test ecx, ecx
je 0x54d09b
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebx
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [edx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebx
mov dword [edx + 4], eax
mov ecx, dword [esp + 0x44]
neg ecx
mov dword [esp + 0x38], ecx
mov ebp, ecx
sar ecx, 0x1f
mov dword [esp + 0x34], ecx
mov esi, dword [edx + 0x6c]
mov edi, dword [edx + 0x68]
mov dword [eax + 0x68], edi
mov dword [eax + 0x6c], esi
mov word [eax + 0x74], 0x2127
mov esi, dword [esp + 0x50]
mov edi, dword [esi + 0x6c]
mov edx, dword [esi + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], edi
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x101d
mov byte [eax + 0x3a], 3
mov dword [eax + 0x40], ebp
mov dword [eax + 0x44], ecx
mov word [eax + 0x34], 0x1001
mov edx, dword [esp + 0x74]
mov edi, dword [edx]
call edi
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d12e
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x200e
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x6c]
mov ebp, dword [ecx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], edx
mov byte [eax + 0xe], 4
mov edx, dword [esp + 0x38]
mov dword [eax + 0x14], edx
mov edx, dword [esp + 0x34]
mov dword [eax + 0x18], edx
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1001
mov edx, dword [esp + 0x44]
mov dword [eax + 0x70], edx
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 0x10], 0xffffffff
call sym.cmd_internal_obj._Link_.EndUnsafePoint
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0xa4]
mov ecx, dword [ebx + 0x6c]
nop
test ecx, ecx
jne 0x54d1bd
mov ecx, 2
and ecx, 0xfffffff3
or ecx, 4
mov dword [ebx + 0x6c], ecx
jmp 0x54d21f
mov ebx, dword [esp + 0x78]
mov ebx, dword [ebx + 0x34]
test ebx, ebx
je 0x54d1e6
lea ebp, [0x5d78a0]
cmp dword [ebx], ebp
jne 0x54d1e2
mov esi, dword [ebx + 4]
jmp 0x54d1ee
xor esi, esi
jmp 0x54d1ee
lea ebp, [0x5d78a0]
xor esi, esi
mov esi, dword [esi + 0x14]
movzx esi, word [esi + 0x7a]
test si, 2
jne 0x54d21d
test ebx, ebx
je 0x54d20d
cmp dword [ebx], ebp
jne 0x54d209
mov ebx, dword [ebx + 4]
jmp 0x54d20f
xor ebx, ebx
jmp 0x54d20f
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
movzx esi, word [ebx + 0x7a]
or esi, 2
mov word [ebx + 0x7a], si
mov ebp, ecx
mov ecx, dword [esp + 0x78]
mov ebx, dword [ecx + 0x34]
test ebx, ebx
je 0x54d23d
lea esi, [0x5d78a0]
cmp dword [ebx], esi
jne 0x54d239
mov ebx, dword [ebx + 4]
jmp 0x54d245
xor ebx, ebx
jmp 0x54d245
lea esi, [0x5d78a0]
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
movzx ebx, word [ebx + 0x7a]
test bx, 2
jne 0x54d824
movzx ecx, byte [0x7a12fd]
test cl, cl
jne 0x54d308
mov ecx, dword [esp + 0x70]
movzx ecx, byte [ecx + 0x18]
test cl, cl
je 0x54d308
mov dword [esp + 0x98], eax
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x98]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d2b4
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x6c]
mov ebx, dword [ecx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], edx
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1002
mov byte [eax + 0x3a], 3
mov word [eax + 0x34], 0x1001
mov dword [eax + 0x40], 0x18
mov dword [eax + 0x44], 0
mov ebp, dword [esp + 0x44]
lea esi, [0x5d78a0]
mov dword [esp + 0xa4], eax
mov ecx, dword [esp + 0x78]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x54d327
cmp dword [ecx], esi
jne 0x54d323
mov ecx, dword [ecx + 4]
jmp 0x54d329
xor ecx, ecx
jmp 0x54d329
xor ecx, ecx
mov eax, dword [ecx + 0x14]
mov eax, dword [eax + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x10
je 0x54d80e
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d382
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov byte [eax + 0xe], 3
mov word [eax + 8], 0x101e
mov ecx, dword [esp + 0x70]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x14]
mov ebx, ecx
shl ecx, 2
mov dword [eax + 0x14], ecx
mov ecx, ebx
shr ebx, 0x1e
sar ecx, 0x1f
shl ecx, 2
or ecx, ebx
mov dword [eax + 0x18], ecx
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1016
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d410
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2035
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1000
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1016
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d47a
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0xa4], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x202b
mov byte [eax + 0x3a], 1
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d4d4
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x94], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov byte [eax + 0xe], 3
mov word [eax + 8], 0x1016
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1017
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d54c
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x94], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x200e
mov byte [eax + 0xe], 4
mov ecx, dword [esp + 0x70]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 0x24]
mov ecx, dword [ecx + 0x28]
mov ebp, dword [esp + 0x44]
add ebx, ebp
mov dword [eax + 0x14], ebx
mov ebx, dword [esp + 0x40]
adc ebx, ecx
mov dword [eax + 0x18], ebx
mov word [eax + 0x76], 0x1001
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1018
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d5d7
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x94], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2035
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1017
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1018
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d641
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x94], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2030
mov byte [eax + 0x3a], 1
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d69b
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x90], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x200e
mov byte [eax + 0xe], 4
mov ecx, dword [esp + 0x70]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx]
mov ebp, dword [ecx + 0x24]
mov ecx, dword [ecx + 0x28]
mov dword [eax + 0x14], ebp
mov dword [eax + 0x18], ecx
mov word [eax + 0x76], 0x1001
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x1019
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x90]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d71a
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x90], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x2127
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x1019
mov byte [eax + 0x3a], 3
mov word [eax + 0x34], 0x1016
mov dword [eax + 0x40], 0
mov dword [eax + 0x44], 0
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x90]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x54d792
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 7
nop
mov ecx, dword [esp + 0xa4]
cmp byte [ecx + 0x3a], 1
jne 0x54da89
lea ebx, [0x5de540]
mov dword [ecx + 0x4c], ebx
mov ebp, dword [0x7a14d8]
test ebp, ebp
je 0x54d7dc
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebp, dword [ecx + 0x50]
mov dword [edi + 4], ebp
mov dword [ecx + 0x50], eax
nop
mov ecx, dword [esp + 0x94]
cmp byte [ecx + 0x3a], 1
jne 0x54da71
mov dword [ecx + 0x4c], ebx
mov ebp, dword [0x7a14d8]
test ebp, ebp
je 0x54d80b
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebp, dword [ecx + 0x50]
mov dword [edi + 4], ebp
mov dword [ecx + 0x50], eax
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x44]
jmp 0x54d850
lea eax, [ecx + 0xc]
mov dword [esp], eax
mov dword [esp + 4], 8
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
xor eax, eax
mov edx, dword [esp + 0x20]
lea ebp, [0x5d78a0]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x44]
cmp byte [ecx + 0x3a], 7
jne 0x54da5e
cmp word [ecx + 0x34], 0x1001
jne 0x54da5e
mov esi, dword [ecx + 0x70]
test esi, esi
jne 0x54da5e
cmp word [ecx + 0x74], 0x2036
je 0x54da5e
mov esi, dword [esp + 0x78]
mov esi, dword [esi + 0x34]
test esi, esi
je 0x54d895
cmp dword [esi], ebp
jne 0x54d891
mov edi, dword [esi + 4]
jmp 0x54d897
xor edi, edi
jmp 0x54d897
xor edi, edi
movzx edi, byte [edi + 0xd]
xchg edi, eax
test al, 2
xchg edi, eax
jne 0x54da52
test esi, esi
je 0x54d8b7
cmp dword [esi], ebp
jne 0x54d8b3
mov esi, dword [esi + 4]
jmp 0x54d8b9
xor esi, esi
jmp 0x54d8b9
xor esi, esi
mov dword [esp + 0x58], ecx
mov dword [esp + 0x30], ebx
movzx edi, byte [esi + 0xd]
or edi, 2
xchg edi, eax
mov byte [esi + 0xd], al
xchg edi, eax
mov esi, dword [esp + 0xc8]
movzx edi, byte [esi + 0xc]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x54d8ef
movzx edi, byte [esi + 0x96]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x54c493
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0x78]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x5c9180]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], eax
lea eax, [0x5de540]
mov dword [esp + 0xbc], eax
mov edx, dword [esp + 0x58]
mov dword [esp + 0xc0], edx
mov ebx, dword [esp + 0xc8]
mov dword [esp], ebx
lea ebp, [0x5f2b45]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x14
lea esi, [esp + 0xb4]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 2
call sym.cmd_internal_obj._Link_.Logf
mov eax, dword [esp + 0xc8]
movzx ecx, byte [eax + 0x96]
test cl, cl
jne 0x54da32
nop
inc dword [eax + 0x90]
mov edx, dword [eax + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5fa435]
mov dword [esp], ebx
mov dword [esp + 4], 0x24
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call ecx
mov eax, dword [esp + 0xc8]
mov edx, dword [eax + 0x84]
mov ecx, dword [edx]
call ecx
lea eax, [0x5ed2b7]
mov dword [esp], eax
mov dword [esp + 4], 0xb
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call sym.log.Fatalf
mov eax, dword [esp + 0xc8]
xor eax, eax
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x30]
lea ebp, [0x5d78a0]
mov esi, dword [esp + 0xc8]
jmp 0x54c493
mov esi, dword [esp + 0xc8]
jmp 0x54c493
mov esi, dword [esp + 0xc8]
jmp 0x54c493
add esp, 0xc4
ret
lea eax, [0x5c9180]
mov dword [esp], eax
lea eax, [0x63bba8]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x5c9180]
mov dword [esp], eax
lea eax, [0x63bba8]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov eax, ebp
call sym.runtime.panicIndex
mov dword [esp], ebx
mov dword [esp + 4], ebp
lea eax, [0x5c9ec0]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x5c9ec0]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
nop
call sym.runtime.morestack_noctxt
jmp sym.cmd_internal_obj_ppc64.preprocess