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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x5b8
mov dword [esp + 0x30], ecx
call fcn.100e0330
mov edx, dword [eax + 8]
mov ebx, dword [eax + 0xc]
lock dec dword [eax]
jne 0x100bc2ee
mov ecx, eax
mov esi, edx
call fcn.10042260
mov edx, esi
cmp edx, 0x2710
mov eax, ebx
lea ecx, [esp + 0x400]
mov dword [esp + 0x400], 0
mov dword [esp + 0x404], 1
mov dword [esp + 0x244], 0
mov dword [esp + 0x238], 0x20
mov byte [esp + 0x248], 3
mov dword [esp + 0x228], 0
mov dword [esp + 0x230], 0
mov dword [esp + 0x408], 0
sbb eax, 0
mov dword [esp + 0x23c], ecx
mov dword [esp + 0x240], 0x1018a21c
jb 0x100bc42d
mov ecx, 0x27
nop word cs:[eax + eax]
nop dword [eax]
mov dword [esp], ecx
mov edi, edx
push 0
push 0x2710
push ebx
push edx
call fcn.100ff5a0
imul ecx, eax, 0xd8f0
mov dword [esp + 4], edx
mov edx, eax
mov eax, ebx
add ecx, edi
movzx esi, cx
shr esi, 2
imul esi, esi, 0x147b
shr esi, 0x11
imul ebx, esi, 0x64
movzx esi, word [esi + esi + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_std_src_synconce.rs]
sub ecx, ebx
mov ebx, 0x5f5e0ff
movzx ecx, cx
cmp ebx, edi
mov ebx, 0
sbb ebx, eax
mov eax, dword [esp]
movzx ecx, word [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_std_src_synconce.rs]
mov ebx, dword [esp + 4]
mov word [esp + eax + 0x4c], si
mov word [esp + eax + 0x4e], cx
lea ecx, [eax - 4]
jb 0x100bc380
mov ebx, edx
cmp edx, 0x63
jbe 0x100bc41e
mov eax, edx
movzx edx, ax
shr edx, 2
imul ebx, edx, 0x147b
shr ebx, 0x11
imul esi, ebx, 0x64
sub eax, esi
movzx eax, ax
movzx eax, word [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_std_src_synconce.rs]
mov word [esp + ecx + 0x4e], ax
add ecx, 0xfffffffe
cmp ebx, 0xa
jae 0x100bc43b
or bl, 0x30
mov byte [esp + ecx + 0x4f], bl
dec ecx
jmp 0x100bc44b
mov ecx, 0x27
mov ebx, edx
cmp edx, 0x63
ja 0x100bc3f5
jmp 0x100bc41e
movzx eax, word [ebx + ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_std_src_synconce.rs]
mov word [esp + ecx + 0x4e], ax
add ecx, 0xfffffffe
mov esi, 0x27
lea eax, [esp + ecx + 0x50]
mov edx, 1
sub esi, ecx
lea ecx, [esp + 0x228]
push esi
push eax
push 0
push 1
call fcn.100034d0
add esp, 0x10
test al, al
jne 0x100bcbaa
movsd xmm0, qword [esp + 0x400]
mov eax, dword [esp + 0x408]
movsd qword [esp + 0x40], xmm0
mov dword [esp + 0x48], eax
call fcn.100e0330
mov edi, eax
mov eax, dword [eax + 0x10]
test eax, eax
je 0x100bc4b9
cmp eax, 1
jne 0x100bc4f0
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x14]
dec edx
je 0x100bc65d
jns 0x100bc4c3
jmp 0x100bcbc8
mov esi, str.main
mov edx, 4
movzx eax, byte [0x10199148]
xor ecx, ecx
mov ebx, edx
call fcn.100ea7d0
test eax, eax
je 0x100bcbcd
mov dword [esp + 0x24], ebx
push ebx
push esi
mov dword [esp + 0x30], eax
push eax
call fcn.10100490
add esp, 0xc
jmp 0x100bc4f8
mov dword [esp + 0x24], 0x80000000
lea eax, [esp + 0x34]
mov dword [esp + 0x2c], edi
push eax
call fcn.10002650
add esp, 4
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
lea ecx, [esp + 0x4d8]
lea edx, [esp + 0x228]
mov dword [esp + 0x22c], 0
mov dword [esp + 0x228], 4
mov dword [esp + 0x314], 0
mov dword [esp + 0x310], 4
mov dword [esp + 8], eax
imul eax, eax, 0x130
mov dword [esp + 0x3f8], ebx
add eax, ebx
mov dword [esp + 0x3fc], eax
call fcn.100bcbf0
mov eax, dword [esp + 0x4d8]
xor eax, 2
or eax, dword [esp + 0x4dc]
jne 0x100bc606
mov edi, 1
xor esi, esi
mov eax, 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 8
mov dword [esp + 0x1c], 0
cmp edi, dword [esp + 0x228]
sbb eax, dword [esp + 0x22c]
jb 0x100bc5c1
lea ecx, [esp + 0x228]
call fcn.100bb730
cmp edi, dword [esp + 0x310]
sbb esi, dword [esp + 0x314]
jb 0x100bc5dd
lea ecx, [esp + 0x310]
call fcn.100bb730
mov esi, dword [esp + 8]
mov eax, 8
cmp dword [esp + 0x14], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0xc], 2
jne 0x100bca08
jmp 0x100bca1f
mov esi, dword [esp + 0x228]
mov edi, dword [esp + 0x22c]
xor ecx, ecx
mov edx, 0
mov dword [esp + 0x10], ebx
mov eax, esi
xor eax, 4
or eax, edi
je 0x100bc681
mov edx, dword [esp + 0x300]
test edx, edx
je 0x100bc669
mov eax, dword [esp + 0x304]
mov ebx, esi
xor ebx, 3
sub eax, edx
mov edx, 0x4ec4ec4f
mul edx
shr edx, 4
or ebx, edi
je 0x100bc681
xor esi, 2
xor eax, eax
or esi, edi
setne al
add edx, eax
jmp 0x100bc681
xor ebx, ebx
mov eax, 1
jmp 0x100bc4db
mov eax, esi
mov edx, 0
xor eax, 3
or eax, edi
je 0x100bc681
xor esi, 2
xor edx, edx
or esi, edi
setne dl
mov esi, dword [esp + 0x310]
mov edi, dword [esp + 0x314]
mov eax, esi
xor eax, 4
or eax, edi
je 0x100bc6eb
mov dword [esp], edx
mov edx, dword [esp + 0x3e8]
test edx, edx
je 0x100bc6d5
mov eax, dword [esp + 0x3ec]
mov ecx, 0x4ec4ec4f
mov ebx, esi
xor ebx, 3
sub eax, edx
mul ecx
mov ecx, edx
shr ecx, 4
or ebx, edi
je 0x100bc6d0
xor esi, 2
xor eax, eax
or esi, edi
setne al
add ecx, eax
mov edx, dword [esp]
jmp 0x100bc6eb
mov edx, dword [esp]
mov eax, esi
xor eax, 3
or eax, edi
je 0x100bc6eb
xor esi, 2
xor ecx, ecx
or esi, edi
setne cl
add ecx, edx
mov esi, 3
cmp ecx, 4
cmovae esi, ecx
cmp ecx, 0x97b424
ja 0x100bcbc8
inc esi
imul ebx, esi, 0xd8
test ebx, ebx
js 0x100bcbc8
movzx eax, byte [0x10199148]
xor ecx, ecx
mov edx, ebx
mov dword [esp + 4], 0
call fcn.100ea7d0
test eax, eax
je 0x100bcbd9
mov edi, eax
push 0xd8
lea eax, [esp + 0x4dc]
push eax
push edi
call fcn.10100490
add esp, 0xc
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edi
mov dword [esp], edi
lea edi, [esp + 0x50]
mov dword [esp + 0x1c], 1
push 0x1d8
lea eax, [esp + 0x22c]
push eax
push edi
call fcn.10100490
add esp, 0xc
mov esi, 1
lea ebx, [esp + 0x400]
jmp 0x100bc7d5
mov eax, dword [esp]
lea eax, [eax + edx + 1]
lea ecx, [esp + 0x14]
mov edx, esi
push eax
call fcn.10113430
add esp, 4
mov eax, dword [esp + 0x18]
mov dword [esp], eax
lea eax, [eax + ebx + 0xd8]
push 0xd8
mov edi, ebx
lea ebx, [esp + 0x404]
push ebx
push eax
call fcn.10100490
add esp, 0xc
inc esi
add edi, 0xd8
mov dword [esp + 4], edi
mov dword [esp + 0x1c], esi
lea edi, [esp + 0x50]
mov ecx, ebx
mov edx, edi
call fcn.100bcbf0
mov eax, dword [esp + 0x400]
xor eax, 2
or eax, dword [esp + 0x404]
je 0x100bc8f2
cmp esi, dword [esp + 0x14]
mov ebx, dword [esp + 4]
mov eax, dword [esp]
jne 0x100bc7a0
mov edi, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
xor edx, edx
mov eax, edi
xor eax, 4
or eax, ecx
mov eax, 0
je 0x100bc873
mov edx, dword [esp + 0x128]
mov eax, edi
xor eax, 3
test edx, edx
jne 0x100bc844
or eax, ecx
mov eax, 0
mov edx, 0
je 0x100bc873
xor edi, 2
xor eax, eax
or edi, ecx
setne al
jmp 0x100bc873
mov dword [esp], eax
mov eax, dword [esp + 0x12c]
sub eax, edx
mov edx, 0x4ec4ec4f
mul edx
mov eax, edx
shr eax, 4
or dword [esp], ecx
je 0x100bc871
xor edi, 2
mov edx, eax
xor eax, eax
or edi, ecx
setne al
add edx, eax
mov eax, edx
xor edx, edx
mov ecx, dword [esp + 0x138]
mov edi, dword [esp + 0x13c]
mov dword [esp], eax
mov eax, ecx
xor eax, 4
or eax, edi
je 0x100bc786
mov edx, dword [esp + 0x210]
mov eax, ecx
xor eax, 3
test edx, edx
jne 0x100bc8c0
or eax, edi
mov eax, dword [esp]
mov edx, 0
je 0x100bc789
xor ecx, 2
xor edx, edx
or ecx, edi
setne dl
jmp 0x100bc789
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x214]
sub eax, edx
mov edx, 0x4ec4ec4f
mul edx
shr edx, 4
or dword [esp + 0xc], edi
je 0x100bc786
xor ecx, 2
xor eax, eax
or ecx, edi
setne al
add edx, eax
jmp 0x100bc786
mov edx, 1
xor ecx, ecx
mov eax, 0
mov ebx, dword [esp + 0x10]
cmp edx, dword [esp + 0x50]
sbb eax, dword [esp + 0x54]
jae 0x100bc9b2
cmp edx, dword [esp + 0x138]
sbb ecx, dword [esp + 0x13c]
jae 0x100bc9d6
test esi, esi
je 0x100bc9ea
mov eax, edi
cmp esi, 1
mov edi, esi
mov ebx, dword [esp + 4]
mov esi, dword [esp]
je 0x100bc984
shr edi, 1
add ebx, esi
push 0xd8
push esi
push eax
call fcn.10100490
add esp, 0xc
push 0xd8
push ebx
push esi
call fcn.10100490
add esp, 0xc
push 0xd8
lea eax, [esp + 0x54]
push eax
push ebx
call fcn.10100490
lea eax, [esp + 0x5c]
add esp, 0xc
add esi, 0xd8
add ebx, 0xffffff28
dec edi
jne 0x100bc940
mov eax, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x14]
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xc], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x68], eax
movsd qword [esp + 0x60], xmm0
jmp 0x100bca1f
lea ecx, [esp + 0x50]
call fcn.100bb730
mov edx, 1
xor ecx, ecx
cmp edx, dword [esp + 0x138]
sbb ecx, dword [esp + 0x13c]
jb 0x100bc924
lea ecx, [esp + 0x138]
call fcn.100bb730
test esi, esi
jne 0x100bc92c
mov esi, dword [esp + 8]
mov eax, dword [esp]
cmp dword [esp + 0x14], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0xc], 2
je 0x100bca1f
push eax
push 0
push dword [0x101990e0]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x100bcaf9
xor edi, edi
mov dword [esp + 0x10], ebx
mov dword [esp + 8], esi
jmp 0x100bca49
inc edi
cmp edi, esi
je 0x100bcaf9
imul eax, edi, 0x130
mov ecx, dword [ebx + eax + 0x120]
cmp ecx, 0x80000000
mov dword [esp], ecx
je 0x100bca40
add eax, ebx
mov ebx, dword [eax + 0x128]
mov ecx, dword [eax + 0x124]
test ebx, ebx
mov dword [esp + 4], ecx
je 0x100bcad0
mov eax, dword [esp + 4]
lea esi, [eax + 0x28]
jmp 0x100bca86
add esi, 0x34
dec ebx
je 0x100bcad0
test dword [esi - 0x10], 0x7fffffff
jne 0x100bcaa0
test dword [esi - 4], 0x7fffffff
je 0x100bca80
jmp 0x100bcaba
push dword [esi - 0xc]
push 0
push dword [0x101990e0]
call dword [sym.imp.kernel32.dll_HeapFree]
test dword [esi - 4], 0x7fffffff
je 0x100bca80
push dword [esi]
push 0
push dword [0x101990e0]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x100bca80
cmp dword [esp], 0
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 8]
je 0x100bca40
push dword [esp + 4]
push 0
push dword [0x101990e0]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x100bca40
cmp dword [esp + 0x34], 0
je 0x100bcb0f
push ebx
push 0
push dword [0x101990e0]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x48]
movsd xmm0, qword [esp + 0x40]
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
movsd xmm1, qword [esp + 0x58]
mov dword [ecx + 0x60], 1
movsd qword [ecx + 0x64], xmm0
mov dword [ecx + 0x6c], eax
mov dword [ecx + 0x70], edx
mov dword [ecx + 0x78], edx
mov dword [ecx + 0x74], esi
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x50]
mov dword [ecx + 4], edx
mov dword [ecx], esi
mov edx, dword [esp + 0x68]
movsd qword [ecx + 8], xmm0
movsd xmm0, qword [esp + 0x60]
movsd qword [ecx + 0x10], xmm1
mov dword [ecx + 0x20], edx
movsd qword [ecx + 0x18], xmm0
mov dword [ecx + 0x24], 0
mov dword [ecx + 0x2c], 0
mov dword [ecx + 0x34], 0
mov dword [ecx + 0x30], 2
mov word [ecx + 0x7c], pe_nt_image_headers32
mov ecx, dword [esp + 0x2c]
lock dec dword [ecx]
jne 0x100bcba2
call fcn.10042260
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x50]
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_alloc_src_string.rs
mov edx, 0x37
push 0x1018df54
push 0x1018a234
push eax
call fcn.1010d2e0
call fcn.10001070
mov ecx, 1
mov edx, ebx
call fcn.1010cb60
mov ecx, 8
mov edx, ebx
call fcn.1010cb60
int3