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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa0
mov ebx, dword [esp + 0xb8]
mov esi, dword [esp + 0xb4]
mov ebp, edx
mov dword [esp + 0x58], ecx
push 0x2f
pop edi
mov ecx, edx
mov edx, edi
call fcn.004ed180
mov ecx, ebp
mov edx, edi
call fcn.004ed180
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x18]
mov dword [esp + 0x38], esi
mov dword [esp + 8], esi
mov dword [esp + 0x3c], ebx
mov dword [esp], ebx
mov dword [esp + 0xc], 0
mov dword [ecx], esi
xor esi, esi
mov dword [ecx + 4], ebx
mov dword [esp + 0x54], eax
lea ecx, [esp + 0x18]
call fcn.0061c3f4
cmp eax, 0x40
je 0x61e38f
cmp eax, 0x5c
je 0x61e3a4
cmp eax, 0x23
je 0x61e3d4
cmp eax, 0x2f
je 0x61e3d4
cmp eax, 0x110000
je 0x61e3d4
cmp eax, 0x3f
jne 0x61e3d1
jmp 0x61e3d4
cmp dword [esp + 0xc], 0
je 0x61e3b0
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x61e3c3
mov ecx, dword [ebp + 0x1c]
push 0xa
jmp 0x61e3bc
cmp byte [esp + 0xbc], 2
je 0x61e3d1
jmp 0x61e3d4
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x61e3c3
mov ecx, dword [ebp + 0x1c]
push 2
push eax
call dword [ecx + 0x14]
add esp, 8
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0xc], eax
inc esi
jmp 0x61e364
cmp dword [esp + 0xc], 0
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ebp
je 0x61e580
test ebx, ebx
mov dword [esp + 0x10], edi
je 0x61e52d
mov eax, ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x14], 0
mov dword [esp + 0x30], 0
mov dword [esp + 8], 0
mov esi, eax
test esi, esi
jle 0x61e503
mov ebp, ecx
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x38]
call fcn.0061fb8c
mov eax, dword [esp + 0x7c]
cmp eax, 0x110000
je 0x61ed92
mov edi, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
cmp eax, 0x3a
jne 0x61e453
cmp dword [esp + 0x30], 0
je 0x61e4bd
mov dword [esp], ecx
mov ecx, dword [esp + 8]
cmp byte [esp + 0x14], 0
mov ebx, dword [esp + 4]
mov edx, 1
movzx ecx, cl
cmove ecx, edx
mov edx, dword [ebx + 0x1c]
mov dword [esp + 8], ecx
mov ecx, dword [ebx + 0x18]
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push eax
call fcn.0061fc12
add esp, 0xc
mov eax, dword [esp]
mov ecx, ebx
mov ebx, dword [esp + 0xc]
lea edx, [esp + 0x7c]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0xa3787c
call fcn.0056f195
mov edi, dword [esp + 0x10]
dec esi
mov ecx, ebp
jmp 0x61e413
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x10]
mov edx, 1
cmp esi, 1
mov dword [esp + 0x30], edx
mov ecx, dword [eax + 8]
lea eax, [esi - 1]
jbe 0x61e411
mov esi, ecx
mov ecx, dword [esp + 4]
push 0x3a
pop edx
mov ebp, eax
call fcn.004ed180
mov dl, 1
mov eax, ebp
mov ecx, esi
mov dword [esp + 0x14], edx
xor edx, edx
inc edx
mov dword [esp + 0x30], edx
jmp 0x61e411
cmp dword [esp + 0x30], 0
mov ebp, dword [esp + 4]
jne 0x61e511
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 8]
and al, 1
or al, byte [esp + 0x14]
je 0x61e587
push 0x40
pop edx
mov esi, ecx
mov ecx, ebp
call fcn.004ed180
mov ecx, esi
jmp 0x61e587
mov esi, dword [esp + 0xc]
mov eax, edi
lea edi, [esp + 0x7c]
mov ecx, edi
mov edx, esi
push eax
call fcn.0061fda0
pop eax
mov eax, dword [edi]
lea ecx, [eax - 0x23]
cmp ecx, 0x1c
ja 0x61e566
mov edx, 0x10001001
bt edx, ecx
jae 0x61e566
mov eax, dword [esp + 0x10]
mov dword [esp + 8], 0
xor ecx, ecx
jmp 0x61e57d
cmp eax, 0x110000
jne 0x61e9e4
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x54]
mov dword [esp + 8], esi
mov dword [esp], eax
mov edi, dword [esp]
mov ebx, dword [esp + 8]
test ebx, ebx
je 0x61e6bc
mov eax, dword [ebp + 8]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x78], ecx
mov dword [esp + 0x30], eax
mov al, byte [esp + 0xbc]
test al, al
movzx esi, al
mov eax, edi
je 0x61e6c8
lea edi, [esp + 0x18]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 8], 0
mov dword [esp], 0
mov dword [edi], ebx
mov dword [edi + 4], eax
sub eax, ebx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
inc ebp
mov dword [esp + 0x10], eax
mov ecx, edi
call fcn.004f2a79
lea ecx, [eax - 9]
cmp ecx, 2
jb 0x61e635
cmp eax, 0xd
je 0x61e635
cmp eax, 0x3a
je 0x61e63d
cmp eax, 0x5b
je 0x61e645
cmp eax, 0x5c
je 0x61e64d
cmp eax, 0x5d
je 0x61e65a
cmp eax, 0x23
je 0x61e678
cmp eax, 0x2f
je 0x61e678
cmp eax, 0x110000
je 0x61e678
cmp eax, 0x3f
je 0x61e678
inc esi
cmp eax, 0x80
jb 0x61e662
cmp eax, 0x800
jae 0x61e66b
push 2
pop eax
jmp 0x61e664
mov al, 1
mov dword [esp + 8], eax
jmp 0x61e662
test byte [esp], 1
jne 0x61e657
jmp 0x61e678
mov al, 1
inc esi
mov dword [esp], eax
jmp 0x61e662
cmp byte [esp + 0xbc], 2
jne 0x61e678
inc esi
jmp 0x61e662
inc esi
mov dword [esp], 0
mov eax, ebp
add ebx, eax
jmp 0x61e5e3
cmp eax, 0x10000
push 4
pop eax
sbb eax, 0
jmp 0x61e664
test byte [esp + 8], 1
jne 0x61e73d
lea edi, [esp + 0x18]
lea eax, [esp + 0x5c]
mov dword [edi], eax
mov dword [edi + 4], esi
mov ecx, edi
call fcn.0062047d
cmp eax, 0x110000
jne 0x61e690
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
push 0xa378c4
push ebx
call fcn.0061bf97
pop ecx
pop ecx
mov ebx, eax
mov edi, edx
jmp 0x61e753
mov eax, dword [esp + 0x58]
mov byte [eax + 4], cl
jmp 0x61ecbd
lea edi, [esp + 0x18]
mov edx, ebx
mov ecx, edi
push eax
call fcn.006202dd
pop eax
mov bl, byte [edi]
cmp byte [edi + 0xc], 2
je 0x61ecb6
movzx eax, bl
lea ebx, [esp + 0x18]
mov dword [esp + 0x14], esi
movzx edi, byte [ebx + 3]
movzx ecx, word [ebx + 1]
mov edx, dword [ebx + 4]
mov esi, dword [ebx + 0x14]
shl ecx, 8
shl edi, 0x18
mov dword [esp + 8], edx
or edi, ecx
mov ecx, dword [ebx + 0x10]
or edi, eax
mov edx, edi
mov dword [esp + 0xc], ecx
mov ecx, ebx
push dword [ebx + 8]
call fcn.0061c4c1
pop eax
mov cl, byte [ebx]
cmp cl, 3
jne 0x61e934
mov edx, dword [esp + 8]
mov bl, byte [esp + 0x19]
mov ecx, edi
call fcn.0043cca3
jmp 0x61ecb6
lea edi, [esp + 0x6c]
lea edx, [esp + 0x5c]
mov ecx, edi
push esi
call fcn.0061c411
pop eax
mov ebx, dword [edi]
mov edi, dword [edi + 8]
mov esi, dword [esp + 0x14]
cmp byte [esp + 0xbc], 1
je 0x61e7d1
cmp esi, 2
jne 0x61e7d9
mov ecx, ebx
mov edx, edi
push 0x5b
call fcn.004ec45d
pop ecx
test al, al
je 0x61e85a
mov ecx, ebx
mov edx, edi
push 0x5d
call fcn.004ec54e
pop ecx
mov cl, 3
test al, al
je 0x61ea00
mov eax, edi
mov ecx, ebx
mov edx, edi
dec eax
push 0xa376ac
push eax
push 1
call fcn.0061be70
add esp, 0xc
mov edi, edx
lea ebp, [esp + 0x18]
mov edx, eax
mov ecx, ebp
push edi
call fcn.0061ca8b
pop eax
cmp byte [ebp], 0
je 0x61ed2a
mov al, byte [esp + 0x19]
mov ebp, dword [esp + 4]
mov cl, 3
jmp 0x61e92c
test edi, edi
je 0x61e99f
lea ebp, [esp + 0x18]
mov edx, ebx
mov ecx, ebp
push edi
call fcn.0061c4c1
pop eax
mov cl, byte [ebp]
cmp cl, 3
jne 0x61e7fb
mov al, byte [esp + 0x19]
mov cl, 3
jmp 0x61ea02
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
movzx ebp, word [esp + 0x1a]
mov al, byte [esp + 0x19]
test byte [esp + 8], 1
mov dword [esp + 0x10], edx
mov dword [esp + 0x4c], esi
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov word [esp + 0x36], bp
mov ebp, dword [esp + 4]
mov edi, eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x64], esi
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x60]
mov dword [esp + 0xc], edx
je 0x61e853
mov edx, dword [esp + 0x70]
mov dword [esp], ecx
mov ecx, ebx
call fcn.0043cca3
mov ecx, dword [esp]
mov ebx, edi
jmp 0x61ea2b
mov eax, ebx
lea ebp, [esp + 0x20]
mov dword [esp + 0x68], ebx
mov esi, 0x4800013
add eax, edi
mov dword [ebp - 8], ebx
mov dword [ebp - 4], edi
mov dword [ebp], ebx
mov ebx, 0x3a801
mov dword [ebp + 4], eax
and dword [ebp + 8], 0
mov ecx, ebp
call fcn.0051a4eb
lea eax, [edx - 0x2f]
cmp eax, 0x11
ja 0x61e898
bt ebx, eax
jb 0x61e920
lea eax, [edx - 9]
cmp eax, 0x1a
ja 0x61e8a5
bt esi, eax
jb 0x61e920
lea eax, [edx - 0x5b]
cmp eax, 4
jb 0x61e920
test edx, edx
je 0x61e920
cmp edx, 0x7c
je 0x61e920
cmp edx, 0x110000
jne 0x61e880
lea esi, [esp + 0x38]
mov ebx, dword [esp + 0x68]
lea ebp, [esp + 0x18]
mov dword [esi], 1
and dword [esi + 4], 0
and dword [esi + 8], 0
mov dword [ebp], ebx
mov dword [ebp + 4], edi
mov dword [ebp + 8], 0xa376bc
mov ecx, ebp
call fcn.0056f1e5
test eax, eax
je 0x61ed60
push edx
push eax
push esi
call fcn.0061d066
add esp, 0xc
test al, al
je 0x61e8e5
push 0x37
pop edx
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly_rustc_8ede3aae28fe6e4d52b38157d7bfe0d3bceef225library_alloc_src_string.rs
push 0xa38050
push 0xa374e8
push ebp
call fcn.0063cff0
add esp, 0xc
ud2
mov ebp, dword [esp + 4]
mov ebx, dword [esp + 0x68]
mov al, 5
mov cl, 3
mov dword [esp], eax
jmp 0x61ea09
movsd xmm0, qword [esp + 0x1a]
movsd xmm1, qword [esp + 0x22]
movzx eax, word [esp + 0x2a]
mov bl, byte [esp + 0x19]
test cl, cl
mov dword [esp], ecx
movsd qword [esp + 0x3a], xmm0
movsd qword [esp + 0x42], xmm1
mov word [esp + 0x4a], ax
mov byte [esp + 0x38], cl
mov byte [esp + 0x39], bl
jne 0x61e9aa
lea ecx, [esp + 0x3c]
call fcn.00620467
test al, al
je 0x61e9aa
lea ecx, [esp + 0x38]
call fcn.0061c4ad
xor eax, eax
mov dword [esp], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
inc eax
mov dword [esp + 0x10], eax
jmp 0x61e9d4
mov cl, 3
mov dword [esp], 0
jmp 0x61ea05
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
movzx eax, word [esp + 0x3a]
mov dword [esp + 0x10], edx
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov word [esp + 0x36], ax
mov dword [esp + 0x50], edx
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 8]
mov ecx, edi
call fcn.0043cca3
mov ecx, dword [esp]
jmp 0x61ea2b
cmp byte [esp + 0xbc], 2
je 0x61e571
cmp eax, 0x5c
je 0x61e556
jmp 0x61e571
mov al, 4
mov dword [esp], eax
mov ebp, dword [esp + 4]
test byte [esp + 8], 1
je 0x61ea1f
mov edx, dword [esp + 0x70]
mov edi, ecx
mov ecx, ebx
call fcn.0043cca3
mov ecx, edi
mov ebx, dword [esp]
cmp cl, 3
je 0x61ecb6
movzx eax, word [esp + 0x36]
lea edi, [esp + 0x38]
mov dword [esp + 0x18], 0xa389b4
mov word [edi + 2], ax
mov eax, dword [esp + 0x10]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x50]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x64]
mov dword [edi + 0x10], eax
xor eax, eax
mov byte [edi], cl
lea ecx, [esp + 0x6c]
mov byte [edi + 1], bl
inc eax
mov dword [ecx], edi
mov dword [ecx + 4], 0x61bfca
mov dword [esp + 0x1c], eax
and dword [esp + 0x28], 0
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x18]
push eax
push ebp
call fcn.0061c1ee
pop ecx
pop edx
movzx ecx, al
mov edx, 0xa3788c
call fcn.006201d4
mov eax, dword [ebp + 8]
cmp byte [edi], 0
mov dword [esp + 8], eax
jne 0x61eadb
cmp dword [esp + 0x44], 0
jne 0x61eadb
mov ecx, dword [esp + 0xc]
mov edx, esi
push 1
push 0xa39120
call fcn.0061d8d8
pop ecx
pop edx
xor ebx, ebx
cmp byte [esp + 0xbc], 2
jne 0x61ecad
test al, al
jne 0x61ecad
mov ecx, dword [esp + 0xc]
mov edx, esi
push 0x3a
call fcn.0061e2dd
pop ecx
xor ebp, ebp
test eax, eax
je 0x61eba5
mov ecx, dword [esp + 4]
mov esi, edx
mov edx, eax
mov bl, 1
lea edi, [esp + 0x18]
mov eax, esi
mov cl, byte [ecx + 0x20]
mov byte [esp], cl
mov esi, eax
mov ecx, edi
mov dword [esp + 0xc], edx
push eax
call fcn.0061fda0
pop eax
mov eax, dword [esp + 0x18]
cmp eax, 0x110000
je 0x61eb6b
lea ecx, [eax - 0x30]
cmp ecx, 0xa
jae 0x61eb4a
imul eax, ebp, 0xa
add ecx, eax
cmp ecx, 0xffff
ja 0x61eca7
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
xor ebx, ebx
mov ebp, ecx
jmp 0x61eb09
cmp byte [esp], 0
jne 0x61eb6b
lea ecx, [eax - 0x23]
cmp ecx, 0x1c
ja 0x61eb62
mov edx, 0x10001001
bt edx, ecx
jb 0x61eb6b
cmp eax, 0x5c
jne 0x61eca7
test bl, 1
jne 0x61eba5
mov eax, dword [esp + 4]
mov edx, dword [eax + 8]
mov ecx, dword [eax]
push 0xa378b4
push dword [esp + 0xc4]
call fcn.0061bf97
pop ecx
pop ecx
mov ecx, eax
call fcn.0061d07b
test ax, ax
je 0x61ecd9
cmp dx, bp
jne 0x61ecd9
xor ebx, ebx
mov eax, dword [esp + 0x48]
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
lea edi, [esp + 0x84]
lea edx, [esp + 0x18]
mov ecx, edi
mov dword [edx + 0x10], eax
movsd qword [edx + 8], xmm1
movsd qword [edx], xmm0
call fcn.0061c46f
mov eax, dword [esp + 0x30]
movsd xmm0, qword [edi + 1]
movsd xmm1, qword [edi + 9]
cmp dword [esp + 0x54], eax
mov al, byte [edi]
movsd qword [esp + 0x38], xmm0
movsd qword [esp + 0x40], xmm1
je 0x61ec0c
test al, al
jne 0x61ec0c
mov eax, dword [esp + 0x58]
mov ebp, dword [esp + 4]
mov byte [eax + 4], 0
jmp 0x61ecbd
mov dword [esp], ebx
mov ebx, dword [esp + 4]
mov byte [esp + 0x54], al
mov edx, dword [esp + 0x14]
mov eax, dword [ebx + 8]
mov ecx, ebx
mov dword [esp + 0x10], eax
lea eax, [esp + 0x7c]
mov byte [eax], 1
push esi
push dword [esp + 0x10]
push eax
call fcn.006201f8
add esp, 0xc
mov dword [esp + 0xc], eax
mov eax, edx
push 9
pop ecx
lea edx, [esp + 0x7c]
mov esi, ebx
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov cl, byte [esp + 0x54]
movsd xmm0, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
mov byte [esp + 0x18], cl
mov ecx, dword [esp + 0x58]
movsd qword [esp + 0x19], xmm0
movsd qword [esp + 0x21], xmm1
push eax
push dword [esp + 0x10]
push dword [esp + 0x18]
push ebp
push dword [esp + 0x10]
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x20]
push dword [esp + 0x4c]
push dword [esp + 0x98]
push dword [esp + 0xe4]
push dword [esp + 0x3c]
call fcn.0061f375
add esp, 0x2c
jmp 0x61ecce
mov ebp, dword [esp + 4]
mov bl, 2
lea ecx, [esp + 0x38]
call fcn.0061c4ad
mov eax, dword [esp + 0x58]
mov byte [eax + 4], bl
mov dword [eax], 2
mov ecx, dword [ebp]
mov edx, dword [ebp + 4]
call fcn.0043cca3
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
xor ebx, ebx
mov dword [esp + 0x18], 0xa3789c
lea eax, [esp + 0x5c]
inc ebx
mov dword [esp + 0x6c], eax
mov word [eax], bp
lea eax, [esp + 0x6c]
mov dword [esp + 0x70], fcn.00445340
mov dword [esp + 0x1c], ebx
and dword [esp + 0x28], 0
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebx
push edi
push dword [esp + 8]
call fcn.0061c1ee
pop ecx
pop edx
movzx ecx, al
mov edx, 0xa378a4
call fcn.006201d4
jmp 0x61eba7
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov al, byte [esp + 0x19]
movzx esi, word [esp + 0x1a]
mov dword [esp + 0x4c], ecx
movzx ecx, byte [esp + 0x28]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov word [esp + 0x36], si
mov dword [esp + 0x64], ecx
mov cl, 2
mov dword [esp + 0x50], edx
jmp 0x61ed7d
mov eax, dword [esp + 0x38]
xor ecx, ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x50], eax
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov ebp, dword [esp + 4]
mov esi, dword [esp + 0x60]
mov dword [esp + 0xc], eax
jmp 0x61ea09
push 0x2b
pop edx
mov ecx, 0xa3a547
push 0xa3786c
call fcn.0063cd70
pop eax
ud2