Function at 0x43578c
Capabilities:
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffc0
sub esp, 0x280
mov esi, dword [edx + 8]
mov ebx, edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x34], edx
test esi, esi
jne 0x4358d2
lea esi, [esp + 0x180]
mov edx, str.RAYON_NUM_THREADSRAYON_RS_NUM_CPUSThreadPoolBuildError
mov ecx, esi
push 0x11
call fcn.0047fef0
pop eax
lea edi, [esp + 0x100]
mov edx, esi
mov ecx, edi
call fcn.004365ca
mov edi, dword [edi]
cmp edi, 0x80000000
je 0x43581f
mov ebx, dword [esp + 0x104]
lea esi, [esp + 0x180]
mov ecx, esi
mov edx, ebx
push dword [esp + 0x108]
call fcn.00413320
pop eax
mov al, byte [esi]
mov edx, ebx
mov esi, dword [esi + 4]
mov ebx, dword [esp + 0x34]
mov ecx, edi
mov byte [esp + 0x24], al
call fcn.0049eabd
cmp byte [esp + 0x24], 0
je 0x43588b
lea esi, [esp + 0x180]
mov edx, 0x4d87b5
mov ecx, esi
push 0x11
call fcn.0047fef0
pop eax
lea edi, [esp + 0x100]
mov edx, esi
mov ecx, edi
call fcn.004365ca
mov edi, dword [edi]
cmp edi, 0x80000000
je 0x43588f
mov ebx, dword [esp + 0x104]
lea esi, [esp + 0x180]
mov ecx, esi
mov edx, ebx
push dword [esp + 0x108]
call fcn.00413320
pop eax
mov al, byte [esi]
mov edx, ebx
mov esi, dword [esi + 4]
mov ebx, dword [esp + 0x34]
mov ecx, edi
mov byte [esp + 0x24], al
call fcn.0049eabd
cmp byte [esp + 0x24], 0
jne 0x43588f
test esi, esi
jne 0x4358d2
and dword [esp + 0x1a0], 0
xorps xmm0, xmm0
lea eax, [esp + 0x180]
movaps xmmword [esp + 0x190], xmm0
movaps xmmword [esp + 0x180], xmm0
push eax
call sub.kernel32.dll_GetSystemInfo
mov esi, dword [esp + 0x194]
test esi, esi
jne 0x4358d2
push 2
pop ecx
mov edx, 0x4e0788
call fcn.00477a27
xor esi, esi
inc esi
mov edi, 0xff
mov al, byte [ebx + 0x2d]
cmp esi, edi
cmovb edi, esi
lea esi, [esp + 0x10c]
and dword [esi - 0xc], 0
mov byte [esp + 0x24], al
push 4
pop eax
mov dword [esi - 8], eax
and dword [esi - 4], 0
and dword [esi], 0
mov dword [esi + 4], eax
and dword [esi + 8], 0
test edi, edi
mov dword [esp + 0x30], eax
je 0x435921
lea ecx, [esp + 0x100]
mov edx, edi
call fcn.004342fb
mov ecx, esi
mov edx, edi
call fcn.00434319
push 0x40
pop eax
mov ebx, edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x38], edi
sub ebx, 1
jb 0x4359f4
cmp byte [esp + 0x24], 0
je 0x43594d
lea ecx, [esp + 0x50]
call fcn.00434449
mov eax, dword [esp + 0x50]
jmp 0x43599f
push 0x40
pop ecx
call fcn.00434512
mov ecx, eax
mov esi, eax
mov edi, edx
call fcn.00434552
mov dword [esp + 0x180], eax
and dword [esp + 0x1c0], 0
and dword [esp + 0x1c4], 0
lea ecx, [esp + 0x180]
call fcn.0043456b
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], edi
mov edi, dword [esp + 0x38]
lea esi, [esp + 0x10c]
mov byte [esp + 0x5c], 1
lock inc dword [eax]
jle 0x43651d
movsd xmm0, qword [esp + 0x50]
movsd xmm1, qword [esp + 0x58]
mov cl, byte [esp + 0x5c]
mov edx, esi
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x188], xmm1
mov dword [esp + 0x190], eax
lea eax, [esp + 0x180]
mov byte [esp + 0x194], cl
lea ecx, [esp + 0x100]
push eax
call fcn.00434492
pop eax
jmp 0x43592e
lea esi, [esp + 0x10c]
mov ebx, edi
mov eax, dword [esi - 0xc]
mov edi, dword [esi + 4]
mov dword [esp + 0x94], eax
mov eax, dword [esi - 8]
mov dword [esp + 0x98], eax
mov eax, dword [esi - 4]
mov dword [esp + 0x48], eax
mov eax, dword [esi]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
and dword [esi - 0xc], 0
mov dword [esp + 0x2c], eax
push 4
pop eax
mov dword [esi - 8], eax
and dword [esi - 4], 0
and dword [esi], 0
mov dword [esi + 4], eax
and dword [esi + 8], 0
test ebx, ebx
je 0x435a5b
lea ecx, [esp + 0x100]
mov edx, ebx
call fcn.004342fb
mov ecx, esi
mov edx, ebx
call fcn.00434319
lea esi, [esp + 0x100]
sub ebx, 1
jb 0x435ac6
lea ecx, [esp + 0x50]
call fcn.00434449
mov eax, dword [esp + 0x50]
lock inc dword [eax]
jle 0x43651d
movsd xmm0, qword [esp + 0x50]
movsd xmm1, qword [esp + 0x58]
mov cl, byte [esp + 0x5c]
lea edx, [esp + 0x10c]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x188], xmm1
mov dword [esp + 0x190], eax
lea eax, [esp + 0x180]
mov byte [esp + 0x194], cl
mov ecx, esi
push eax
call fcn.00434492
pop eax
jmp 0x435a62
mov eax, dword [esp + 0x108]
movsd xmm0, qword [esp + 0x100]
mov ebx, dword [esp + 0x10c]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x110]
movsd qword [esp + 0xe0], xmm0
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x114]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x435b3b
cmp eax, 0x38e38e3
ja 0x436535
imul esi, eax, 0x24
test esi, esi
js 0x436535
push 4
pop ecx
mov edx, esi
call fcn.0048d7a1
mov dword [esp + 0x30], eax
test eax, eax
mov eax, dword [esp + 0x2c]
je 0x43653a
mov ecx, dword [esp + 0x30]
lea edx, [edi + eax*8]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x180], edi
mov dword [esp + 0x184], edi
mov dword [esp + 0x90], ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x188], eax
lea eax, [esp + 0x102]
add ecx, 0x20
mov dword [esp + 0x18c], edx
cmp edi, edx
je 0x435bdf
lea edx, [edi + 8]
inc dword [esp + 0x24]
mov dword [esp + 0x184], edx
mov edx, dword [edi]
mov bl, byte [edi + 4]
and dword [eax + 4], 0
and dword [eax], 0
and word [eax + 8], 0
and dword [ecx - 0x20], 0
and word [ecx - 0x1c], 0
movsd xmm0, qword [esp + 0x100]
movsd qword [ecx - 0x1a], xmm0
mov esi, dword [esp + 0x108]
mov dword [ecx - 0x12], esi
and dword [ecx - 0xc], 0
and dword [ecx - 8], 0
mov dword [ecx - 4], edx
mov byte [ecx], bl
add ecx, 0x24
mov edi, dword [esp + 0x184]
mov edx, dword [esp + 0x18c]
jmp 0x435b7b
lea ecx, [esp + 0x180]
call fcn.00434648
mov edi, dword [esp + 0x38]
test edi, edi
je 0x435c0e
mov esi, edi
shl esi, 6
push 0x40
pop ecx
mov edx, esi
call fcn.0048d7a1
test eax, eax
mov dword [esp + 0x28], eax
je 0x43653e
mov eax, dword [esp + 0x28]
xor ebx, ebx
add eax, 8
cmp edi, ebx
je 0x435c2d
and dword [eax - 8], 0
and word [eax - 4], 0
and dword [eax], 0
inc ebx
add eax, 0x40
jmp 0x435c17
lea esi, [esp + 0x100]
mov ecx, esi
call fcn.004345b8
mov eax, dword [esp + 0xe8]
lea edi, [esp + 0x1b8]
movsd xmm0, qword [esp + 0xe0]
mov dword [edi - 0x2d], eax
mov eax, dword [esp + 0x34]
movsd qword [edi - 0x35], xmm0
movsd xmm0, qword [edi - 0x31]
mov ecx, dword [eax + 0xc]
movsd qword [esp + 0x57], xmm0
movsd xmm0, qword [edi - 0x38]
mov dword [esp + 0x8c], ecx
mov ecx, dword [eax + 0x10]
and dword [eax + 0xc], 0
movsd qword [esp + 0x50], xmm0
mov dword [esp + 0x88], ecx
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x84], ecx
mov ecx, dword [eax + 0x20]
and dword [eax + 0x1c], 0
mov dword [esp + 0xcc], ecx
mov ecx, dword [eax + 0x24]
mov dword [esp + 0xc8], ecx
mov ecx, dword [eax + 0x28]
and dword [eax + 0x24], 0
mov dword [esp + 0xc4], ecx
push 0x20
pop ecx
rep movsd dword es:[edi], dword [esi]
push 0x40
pop edx
mov ecx, 0x140
call fcn.0048e46f
xor edi, edi
mov esi, eax
inc edi
mov dword [eax], edi
mov dword [eax + 4], edi
add eax, 8
push 0xb8
lea ecx, [esp + 0x184]
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x98]
mov dword [esi + 0xc0], eax
mov eax, dword [esp + 0x88]
shl ecx, 4
add ecx, edx
mov dword [esp + 0x48], ecx
mov dword [esi + 0xc4], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0xc8], eax
mov eax, dword [esp + 0xcc]
mov dword [esi + 0xcc], eax
mov eax, dword [esp + 0xc8]
mov dword [esi + 0xd0], eax
mov eax, dword [esp + 0xc4]
mov dword [esi + 0xd4], eax
and dword [esi + 0xd8], 0
mov byte [esi + 0xdc], 0
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x50]
movsd xmm1, qword [esp + 0x57]
movsd qword [esi + 0xdd], xmm0
movsd qword [esi + 0xe4], xmm1
mov dword [esi + 0xec], edi
mov dword [esi + 0xf0], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x3c]
mov dword [esi + 0xf4], eax
mov eax, dword [esp + 0x2c]
mov dword [esi + 0xf8], ebx
and dword [esi + 0xfc], 0
mov ebx, dword [esp + 0x34]
mov dword [esi + 0x100], eax
mov eax, dword [esp + 0x30]
mov dword [esi + 0x104], eax
mov eax, dword [esp + 0x24]
mov dword [esi + 0x108], eax
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x94]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
lea eax, [edi + eax*8]
mov dword [esp + 0x68], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 0x6c], eax
mov eax, dword [ebx]
and dword [esp + 0x74], 0
and dword [esp + 0x70], 0
and dword [esp + 0x7c], 0
and dword [esp + 0x78], 0
mov dword [esp + 0x40], ecx
mov ch, byte [ebx + 0x2c]
mov dword [esp + 0x3c], eax
mov byte [esp + 0x88], ch
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x94], ecx
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x38], esi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], ecx
mov ecx, dword [ebx + 0x18]
xor ebx, ebx
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x54]
mov esi, dword [esp + 0x38]
cmp edx, dword [esp + 0x48]
mov dword [esp + 0x24], ebx
lea esi, [esi + ebx]
je 0x436397
mov bl, byte [edx + 0xc]
lea ecx, [edx + 0x10]
cmp bl, 2
je 0x436397
movsd xmm0, qword [edx]
mov eax, dword [edx + 8]
mov dword [esp + 0x28], ecx
cmp edi, dword [esp + 0x94]
mov dword [esp + 0x188], eax
movsd qword [esp + 0x180], xmm0
mov byte [esp + 0x18c], bl
mov al, byte [edx + 0xf]
movzx ecx, word [edx + 0xd]
lea edx, [esp + 0x1b8]
mov word [edx - 0x2b], cx
mov byte [edx - 0x29], al
je 0x4363a9
mov ecx, edx
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x2c], esi
movsd xmm0, qword [esp + 0x180]
mov esi, dword [eax + edx*8]
mov bh, byte [eax + edx*8 + 4]
mov eax, dword [esp + 0x188]
movsd qword [esp + 0xf0], xmm0
mov dword [esp + 0xf8], eax
movzx eax, word [ecx - 0x2b]
mov dword [esp + 0x98], esi
mov word [esp + 0x44], ax
mov al, byte [ecx - 0x29]
mov byte [esp + 0x46], al
mov eax, dword [esp + 0x90]
test eax, eax
je 0x435f51
mov esi, dword [esp + 0x2c]
push esi
push eax
lea eax, [esp + 0x188]
push eax
mov eax, dword [esp + 0x90]
call dword [eax + 0x10]
mov edx, dword [esp + 0x30]
add esp, 0xc
jmp 0x435f60
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x180], 0x80000000
mov eax, dword [esp + 0x38]
add edi, 8
mov dword [esp + 0x2c], edi
lea edi, [eax + edx + 1]
mov edx, dword [esp + 0x30]
lock inc dword [edx]
jle 0x43651f
mov eax, dword [esp + 0x188]
lea ecx, [esp + 0x100]
movsd xmm0, qword [esp + 0x180]
test esi, esi
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x3c]
movsd qword [ecx + 8], xmm0
movsd xmm0, qword [esp + 0xf0]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0xf8]
movsd qword [ecx + 0x1c], xmm0
mov dword [ecx + 0x24], eax
mov byte [esp + 0x128], bl
movzx eax, word [esp + 0x44]
mov bl, byte [esp + 0x46]
mov word [ecx + 0x29], ax
mov byte [ecx + 0x2b], bl
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x114], ecx
mov byte [esp + 0x118], bh
mov dword [esp + 0x12c], edx
mov dword [esp + 0x130], esi
jne 0x436099
cmp byte [esp + 0x88], 0
je 0x436099
call fcn.00436583
test eax, eax
jne 0x4363e8
lea edi, [esp + 0x180]
lea edx, [esp + 0x100]
mov ecx, edi
call fcn.00434d52
mov ecx, 0xc0
push 0x40
pop edx
call fcn.0048e46f
mov esi, eax
push 0xc0
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, esi
call fcn.00435012
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x104]
mov edx, dword [eax + 0x108]
push 0x4d8630
push 0
call fcn.00416aec
pop ecx
pop edx
mov ecx, eax
call fcn.00435046
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
inc ebx
mov edx, ecx
jmp 0x435e6e
lea edx, [esp + 0x100]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x10c]
mov esi, dword [esp + 0x110]
movsd xmm1, qword [edx + 0x1c]
movsd xmm0, qword [edx + 0x14]
movsd xmm2, qword [edx + 0x24]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x30], esi
movsd qword [esp + 0x188], xmm1
movsd xmm1, qword [edx + 0x2c]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x190], xmm2
cmp ecx, 0x80000000
mov dword [esp + 0x24], ecx
movsd qword [esp + 0x198], xmm1
jne 0x436127
mov edx, dword [esp + 0x3c]
mov ebx, 0x80000000
xor esi, esi
xor eax, eax
jmp 0x4361b0
and dword [esp + 0x9c], 0
mov ecx, esi
mov dword [esp + 0xa4], 0x80000000
call fcn.00435565
mov edi, edx
mov dword [esp + 0x28], eax
push esi
push ebx
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x9c]
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xd0]
mov dword [esp + 0xd4], edi
mov dword [esp + 0xd8], esi
push eax
call fcn.0047ae20
mov edx, dword [esp + 0x40]
add esp, 4
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov ebx, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xbc]
or eax, edx
jne 0x4361bf
call fcn.00483f30
mov dword [esp + 0x28], eax
jmp 0x4361ca
test edx, edx
cmovne ecx, dword [esp + 0x40]
mov dword [esp + 0x28], ecx
xor ecx, ecx
cmp ebx, 0x80000000
je 0x436229
cmp esi, 7
ja 0x4361ea
xor eax, eax
xor edx, edx
cmp esi, edx
je 0x4361f7
cmp byte [edi + edx], 0
je 0x4361fb
inc edx
jmp 0x4361dd
mov edx, edi
xor ecx, ecx
push esi
call fcn.00411c50
pop ecx
jmp 0x4361fe
mov edx, esi
jmp 0x4361fe
xor eax, eax
inc eax
test eax, eax
jne 0x436548
lea ecx, [esp + 0x9c]
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], edi
mov dword [esp + 0xa4], esi
call fcn.0040a910
mov ecx, eax
call fcn.004782e0
mov dword [esp + 0xdc], eax
lock inc dword [eax]
jle 0x43651d
mov edi, eax
push 0x18
pop ecx
push 4
pop edx
call fcn.0048e46f
mov ebx, eax
xor eax, eax
inc eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
and dword [ebx + 8], 0
and dword [ebx + 0xc], 0
mov dword [esp + 0xd0], ebx
lock inc dword [ebx]
jle 0x43651d
xor ecx, ecx
call fcn.00482f30
mov esi, eax
test eax, eax
je 0x436287
lock inc dword [esi]
jle 0x43651d
mov ecx, esi
jmp 0x436289
xor ecx, ecx
call fcn.00482f30
lea ecx, [esp + 0x9c]
mov dword [esp + 0x9c], eax
call fcn.00490f1f
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x4362b0
add ecx, 8
call fcn.0047acf0
push 0x40
pop ecx
push 4
pop edx
call fcn.0048e46f
mov ecx, dword [esp + 0x3c]
mov dword [eax], edi
mov dword [eax + 4], ebx
mov dword [eax + 8], esi
mov edx, dword [esp + 0x28]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x1c], ecx
lea ecx, [esp + 0x9c]
movsd xmm0, qword [esp + 0x180]
movsd xmm1, qword [esp + 0x188]
movsd qword [eax + 0x20], xmm0
movsd qword [eax + 0x28], xmm1
movsd xmm0, qword [esp + 0x190]
movsd qword [eax + 0x30], xmm0
movsd xmm0, qword [esp + 0x198]
movsd qword [eax + 0x38], xmm0
push 0x4d8550
push eax
call fcn.00483fe0
pop eax
pop ecx
movzx esi, byte [esp + 0x9c]
cmp esi, 4
jne 0x4364cb
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xb0], edi
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], eax
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
lea ecx, [esp + 0xb0]
call fcn.00432c94
lea ecx, [esp + 0xb4]
call fcn.0043530a
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x48], eax
jmp 0x435e2e
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x64], edi
mov dword [esp + 0x7c], esi
jmp 0x4363c9
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x180]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], edi
mov dword [esp + 0x7c], esi
call fcn.00434683
mov ebx, dword [esp + 0x34]
lea ecx, [esp + 0x50]
call fcn.004365a2
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x80]
mov dword [ecx + 4], eax
mov byte [ecx], 6
jmp 0x43647f
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
and dword [ecx + 4], 0
mov dword [ecx], 5
lea ecx, [esp + 0x100]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], edx
mov dword [esp + 0x7c], edi
call fcn.004346d7
lea ecx, [esp + 0x50]
call fcn.004365a2
mov esi, dword [esp + 0x30]
lock dec dword [esi + 0xec]
jne 0x436472
mov ecx, dword [esi + 0x104]
imul ebx, dword [esi + 0x108], 0x24
add esi, 0xf0
xor edi, edi
push 3
pop edx
test ebx, ebx
je 0x436472
mov eax, edx
xchg dword [ecx + 0x18], eax
cmp eax, 2
jne 0x436469
mov dword [esp + 0x24], ecx
mov ecx, esi
mov edx, edi
call fcn.00435223
push 3
pop edx
mov ecx, dword [esp + 0x24]
add ecx, 0x24
add ebx, 0xffffffdc
inc edi
jmp 0x436447
lea ecx, [esp + 0x4c]
call fcn.00434700
mov ebx, dword [esp + 0x34]
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 0x10]
call fcn.0043422b
mov esi, dword [ebx + 0x14]
test esi, esi
je 0x4364ad
mov edi, dword [ebx + 0x18]
push esi
call dword [edi]
add esp, 4
mov eax, dword [edi + 4]
test eax, eax
je 0x4364ad
mov edx, dword [edi + 8]
mov ecx, esi
push eax
call fcn.0040240f
pop eax
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ebx + 0x20]
call fcn.0043422b
mov ecx, dword [ebx + 0x24]
mov edx, dword [ebx + 0x28]
call fcn.0043422b
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movzx edi, byte [esp + 0x9f]
movzx eax, word [esp + 0x9d]
mov ebx, dword [esp + 0xa0]
lea ecx, [esp + 0xd0]
shl eax, 8
shl edi, 0x18
or edi, eax
call fcn.0043530a
lea ecx, [esp + 0xdc]
call fcn.00432c94
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x4c]
or edi, esi
mov dword [eax + 4], ebx
mov dword [eax], edi
mov dword [esp + 0x30], ecx
jmp 0x436419
ud2
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x7c], edi
ud2
call fcn.0040a720
push 4
jmp 0x436540
push 0x40
pop ecx
mov edx, esi
call fcn.0049ff70
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], edi
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa8], edx
push 0x2f
pop edx
mov ecx, str.thread_name_may_not_contain_interior_null_bytes
push 0x4e19f4
push 0x4d8580
lea eax, [esp + 0xa4]
push eax
call fcn.004a05e0