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

Disassembly:
mov ecx, dword [0x67bf38]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4d20c9
sub esp, 0x70
mov eax, 0
mov dword [esp + 0x6c], eax
mov byte [esp + 0x23], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 4]
mov esi, dword [esp + 0x78]
mov edi, dword [esi + 4]
test ebp, 1
jne 0x4d20a7
test edi, 1
jne 0x4d20a7
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov eax, ebx
lea ebx, [0x67be00]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov byte [esp + 0x22], 1
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
lea ebx, [sym.regexp.mergeRuneSets.func1]
mov dword [esp + 0x5c], ebx
lea ebx, [esp + 0x22]
mov dword [esp + 0x60], ebx
lea ebx, [esp + 0x50]
mov dword [esp + 0x64], ebx
lea ebx, [esp + 0x44]
mov dword [esp + 0x68], ebx
lea ebx, [esp + 0x5c]
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x23], 1
mov dword [esp + 0x2c], 0xffffffff
jmp 0x4d1a77
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x28]
cmp ebx, ebp
jl 0x4d1a89
cmp dword [esp + 0x24], edi
jge 0x4d1fe4
mov ecx, dword [esp + 0x24]
cmp ecx, edi
jl 0x4d1bce
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x4d1acf
mov edx, dword [eax + 4]
cmp edx, ebx
jbe 0x4d209e
mov edx, dword [eax]
mov esi, dword [esp + 0x54]
mov edx, dword [edx + ebx*4]
cmp esi, ecx
jbe 0x4d2095
mov esi, dword [esp + 0x50]
lea esi, [esi + ecx*4]
cmp dword [esi], edx
jl 0x4d1acb
xor ecx, ecx
jmp 0x4d1bc5
mov esi, dword [esp + 0x78]
mov ecx, dword [eax + 4]
cmp ecx, ebx
jbe 0x4d208e
mov edx, dword [eax]
lea eax, [ebx + 1]
mov esi, dword [edx + ebx*4]
cmp ecx, eax
jbe 0x4d2089
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
add ecx, 2
mov edi, dword [esp + 0x50]
mov ebx, dword [edx + ebx*4 + 4]
cmp eax, ecx
jae 0x4d1b4b
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ebx
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0x531ac0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x58], eax
mov dword [esp + 0x50], edi
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x54], ecx
mov dword [edi + ecx*4 - 8], esi
mov dword [edi + ecx*4 - 4], ebx
add dword [esp + 0x28], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
inc esi
mov edi, dword [esp + 0x44]
cmp ebx, esi
jae 0x4d1bac
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x531bc0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], edi
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x48], esi
mov ebx, dword [esp + 0x7c]
mov dword [edi + esi*4 - 4], ebx
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0x3c]
mov ecx, 1
mov byte [esp + 0x22], cl
jmp 0x4d1f78
cmp ebx, ebp
jl 0x4d1d18
mov ebx, dword [esp + 0x2c]
test ebx, ebx
jle 0x4d1c10
mov edx, dword [esi + 4]
cmp edx, ecx
jbe 0x4d2080
mov edx, dword [esi]
mov eax, dword [esp + 0x54]
mov edx, dword [edx + ecx*4]
cmp eax, ebx
jbe 0x4d2077
mov eax, dword [esp + 0x50]
lea ebx, [eax + ebx*4]
cmp dword [ebx], edx
jl 0x4d1c0c
xor eax, eax
jmp 0x4d1d0b
mov eax, dword [esp + 0x74]
mov ebx, dword [esi + 4]
cmp ebx, ecx
jbe 0x4d206e
mov edx, dword [esi]
lea eax, [ecx + 1]
mov esi, dword [edx + ecx*4]
cmp ebx, eax
jbe 0x4d2067
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
add eax, 2
mov edi, dword [esp + 0x50]
mov ecx, dword [edx + ecx*4 + 4]
cmp ebx, eax
jae 0x4d1c8e
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ecx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x531ac0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x58], eax
mov dword [esp + 0x50], edi
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov eax, ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x54], eax
mov dword [edi + eax*4 - 8], esi
mov dword [edi + eax*4 - 4], ecx
add dword [esp + 0x24], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
inc esi
mov edi, dword [esp + 0x44]
cmp ebx, esi
jae 0x4d1cef
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x531bc0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], edi
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x48], esi
mov ebx, dword [esp + 0x80]
mov dword [edi + esi*4 - 4], ebx
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x3c]
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
jmp 0x4d1f78
mov edx, dword [esi + 4]
cmp edx, ecx
jbe 0x4d205e
mov esi, dword [esi]
mov edi, dword [eax + 4]
mov ebp, dword [esi + ecx*4]
cmp edi, ebx
jbe 0x4d2055
mov eax, dword [eax]
mov dword [esp + 0x40], eax
mov eax, dword [eax + ebx*4]
cmp eax, ebp
jle 0x4d1e5f
mov eax, dword [esp + 0x2c]
test eax, eax
jle 0x4d1d71
mov ebx, dword [esp + 0x54]
cmp eax, ebx
jae 0x4d204e
mov ebx, dword [esp + 0x50]
lea ebx, [ebx + eax*4]
cmp dword [ebx], ebp
jl 0x4d1d71
mov ebx, dword [esp + 0x80]
xor eax, eax
jmp 0x4d1e4a
lea eax, [ecx + 1]
cmp edx, eax
jbe 0x4d2047
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x54]
add edi, 2
mov eax, dword [esp + 0x50]
mov esi, dword [esi + ecx*4 + 4]
cmp ebx, edi
jae 0x4d1dd9
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], esi
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x531ac0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x50], eax
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x54], edi
mov dword [eax + edi*4 - 8], ebp
mov dword [eax + edi*4 - 4], esi
add dword [esp + 0x24], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x48]
inc ebp
mov esi, dword [esp + 0x44]
cmp ebx, ebp
jae 0x4d1e36
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x531bc0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], ebp
mov ebx, dword [esp + 0x80]
mov dword [esi + ebp*4 - 4], ebx
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
mov ebp, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
jmp 0x4d1f78
mov ebp, dword [esp + 0x2c]
test ebp, ebp
jle 0x4d1e8a
mov ecx, dword [esp + 0x54]
cmp ebp, ecx
jae 0x4d2040
mov esi, dword [esp + 0x50]
lea ebp, [esi + ebp*4]
cmp dword [ebp], eax
jl 0x4d1e8a
mov ebx, dword [esp + 0x7c]
xor eax, eax
jmp 0x4d1f68
lea ebp, [ebx + 1]
cmp edi, ebp
jbe 0x4d2037
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x54]
add esi, 2
mov edi, dword [esp + 0x50]
mov ecx, edi
mov edi, dword [esp + 0x40]
mov ebx, dword [edi + ebx*4 + 4]
cmp ebp, esi
jae 0x4d1efa
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], ebx
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
lea eax, [0x531ac0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x58], eax
mov dword [esp + 0x50], edi
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov ecx, edi
mov dword [esp + 0x54], esi
mov dword [ecx + esi*4 - 8], eax
mov dword [ecx + esi*4 - 4], ebx
add dword [esp + 0x28], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x48]
inc ebp
mov esi, dword [esp + 0x44]
cmp ebx, ebp
jae 0x4d1f57
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x531bc0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], ebp
mov ebx, dword [esp + 0x7c]
mov dword [esi + ebp*4 - 4], ebx
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
mov ebp, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
movzx ebx, byte [esp + 0x22]
test bl, bl
jne 0x4d1a73
mov eax, dword [0x651660]
mov ecx, dword [0x651670]
mov ebx, dword [0x651664]
mov ebp, dword [0x651674]
mov esi, dword [0x651678]
mov edi, dword [0x651668]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x98], esi
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
call eax
add esp, 0x70
ret
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ebp
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], esi
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
call eax
add esp, 0x70
ret
mov eax, ebp
mov ecx, edi
call sym.runtime.panicIndex
mov eax, ebp
call sym.runtime.panicIndex
mov ecx, edx
call sym.runtime.panicIndex
mov ecx, ebx
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, edi
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, edx
call sym.runtime.panicIndex
mov ecx, ebx
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicIndex
mov ecx, eax
mov eax, ebx
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, edx
call sym.runtime.panicIndex
call sym.runtime.panicIndex
mov eax, ebx
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, esi
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, edx
call sym.runtime.panicIndex
lea eax, [0x5318c0]
mov dword [esp], eax
lea eax, [0x585468]
mov dword [esp + 4], eax
call sym.runtime.gopanic
nop
call sym.runtime.deferreturn
add esp, 0x70
ret
call sym.runtime.morestack_noctxt
jmp sym.regexp.mergeRuneSets