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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xb4
lea eax, [esp + 0x28]
mov esi, edx
mov edx, dword [esp + 0xc8]
mov edi, ecx
mov dword [eax], str.thompson::NFA__n
mov dword [eax + 4], 1
and dword [eax + 0x10], 0
mov dword [eax + 8], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
and dword [eax + 0xc], 0
mov ecx, esi
push eax
call fcn.0041f0a0
pop ecx
mov cl, 1
test al, al
jne 0x455d48
mov ebx, dword [edi + 0x148]
mov dword [esp + 4], esi
mov esi, dword [edi + 0x144]
lea eax, [edi + 8]
mov dword [esp + 0x88], eax
mov ecx, ebx
call fcn.00455dd2
mov eax, dword [edi + 0x128]
mov ecx, dword [edi + 0x12c]
mov dword [esp + 0xc], edi
mov dword [esp + 0x94], ebx
imul edi, ebx, 0x14
xor ebx, ebx
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], ecx
test edi, edi
je 0x455bc6
xor ecx, ecx
cmp ebx, dword [esp + 0x94]
mov edx, 0x5d4250
setb cl
mov ebp, ecx
call fcn.004ac869
cmp ebx, dword [esp + 0x90]
mov dword [esp + 0x98], esi
jne 0x455aa1
mov dword [esp], 0x5e
jmp 0x455aba
cmp ebx, dword [esp + 0x8c]
jne 0x455ab3
mov dword [esp], 0x3e
jmp 0x455aba
mov dword [esp], 0x20
mov eax, esp
add esi, 0x14
add ebp, ebx
mov dword [esp + 8], ebx
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
mov dword [esp + 0x14], fcn.004204d0
mov dword [esp + 0x18], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x1c], fcn.004077d1
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0x4562ac
push 2
pop edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x30], edx
push 0x20
pop eax
mov cl, 3
mov dword [esp + 0x38], eax
and dword [esp + 0x3c], 0
and dword [esp + 0x40], 0
mov dword [esp + 0x9c], 0x5d1fc4
mov dword [esp + 0xa0], 4
mov byte [esp + 0x44], cl
mov dword [esp + 0x48], edx
and dword [esp + 0x50], 0
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], 1
mov dword [esp + 0x60], 8
mov byte [esp + 0x64], cl
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
and dword [esp + 0x80], 0
lea eax, [esp + 0x28]
mov byte [esp + 0x84], cl
mov dword [esp + 0xac], eax
push 3
pop ecx
lea eax, [esp + 0x10]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0xc8]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 4]
lea eax, [esp + 0x9c]
push eax
call fcn.0041f0a0
pop ecx
add edi, 0xffffffec
test al, al
mov ebx, ebp
je 0x455a68
jmp 0x455d46
mov eax, dword [esp + 0xc]
mov esi, dword [eax + 0x154]
cmp esi, 1
jbe 0x455d06
mov dword [esp + 0x28], 0x62968c
mov dword [esp + 0x2c], 1
and dword [esp + 0x38], 0
mov dword [esp + 0x30], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
and dword [esp + 0x34], 0
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc8]
lea eax, [esp + 0x28]
push eax
call fcn.0041f0a0
pop ecx
test al, al
jne 0x455d46
xor edi, edi
mov ebp, fcn.004077d1
mov bl, 3
cmp esi, edi
je 0x455d06
mov eax, dword [esp + 0xc]
mov dword [esp], edi
mov ecx, dword [eax + 0x150]
mov edx, dword [eax + 0x154]
push 0x5d1f94
push edi
call fcn.00454a95
pop ecx
pop edx
mov eax, dword [eax]
mov dword [esp + 8], eax
mov eax, esp
mov dword [esp + 0x9c], eax
lea eax, [esp + 8]
mov dword [esp + 0xa0], ebp
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ebp
push 2
pop ecx
mov dword [esp + 0x28], ecx
and dword [esp + 0x30], 0
mov dword [esp + 0x34], 6
push 0x20
pop eax
mov dword [esp + 0x38], eax
and dword [esp + 0x3c], 0
mov dword [esp + 0x40], 8
mov byte [esp + 0x44], bl
mov dword [esp + 0x48], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x58], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x10], 0x5d1fac
mov dword [esp + 0x14], 3
mov dword [esp + 0x5c], 1
and dword [esp + 0x60], 0
mov edx, dword [esp + 0xc8]
mov byte [esp + 0x64], bl
mov dword [esp + 0x20], eax
lea eax, [esp + 0x9c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 4]
lea eax, [esp + 0x10]
push eax
call fcn.0041f0a0
pop ecx
test al, al
jne 0x455d46
inc edi
jmp 0x455c22
mov esi, dword [esp + 4]
mov edi, dword [esp + 0xc8]
mov dword [esp + 0x28], 0x62968c
mov dword [esp + 0x2c], 1
and dword [esp + 0x38], 0
mov dword [esp + 0x30], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
and dword [esp + 0x34], 0
lea ebx, [esp + 0x28]
mov ecx, esi
mov edx, edi
push ebx
call fcn.0041f0a0
pop ecx
test al, al
je 0x455d55
mov cl, 1
mov eax, ecx
add esp, 0xb4
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x88]
mov dword [esp + 0x28], 0x5d1f84
mov dword [esp + 0x2c], 2
and dword [esp + 0x38], 0
mov ecx, esi
mov edx, edi
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov dword [esp + 0x14], 0x455e0f
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 1
push ebx
call fcn.0041f0a0
pop ecx
test al, al
mov cl, 1
jne 0x455d48
mov dword [esp + 0x28], 0x5cfe8c
mov dword [esp + 0x2c], 1
and dword [esp + 0x38], 0
mov dword [esp + 0x30], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
and dword [esp + 0x34], 0
mov ecx, esi
mov edx, edi
push ebx
call fcn.0041f0a0
pop ecx
mov ecx, eax
jmp 0x455d48