Function at 0x48d55f
Capabilities:
Hide graphical window

Disassembly:
push ebp
lea ebp, [esp - 0x30]
sub esp, 0x174
push ebx
push esi
push edi
push dword [ebp + 0x54]
mov eax, 0x4bca0c
push dword [ebp + 0x50]
mov esi, ecx
push dword [ebp + 0x4c]
mov dword [ebp + 0x2c], esi
push dword [ebp + 0x48]
push eax
push eax
mov eax, dword [ebp + 0x44]
push dword [eax]
push dword [ebp + 0x38]
push 0x10
call fcn.004385fa
push 0x4d8d24
mov dword [esi], 0x4c5244
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp + 0x3c]
mov eax, dword [eax + 0x80]
and dword [ebp + 0x18], 0
shl eax, 2
not eax
and eax, 0x10000
mov dword [ebp + 0x44], eax
mov eax, dword [ebp + 0x78]
test eax, eax
mov dword [ebp + 0x14], 9
je 0x48d5dc
mov cx, word [eax]
mov ax, word [eax + 2]
mov word [ebp + 0x18], cx
mov word [ebp + 0x14], ax
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x28]
mov ecx, dword [esi + 0x24]
mov edi, dword [ebp + 0x6c]
add edx, eax
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x2c]
add eax, ecx
mov dword [ebp + 8], eax
mov dword [ebp + 4], edx
mov edx, dword [ebp + 0x68]
mov eax, edx
mov ebx, 0x800
and eax, ebx
mov dword [ebp - 0x20], eax
mov eax, edx
and eax, 0xfffff7ff
mov dword [esi + 0x44], eax
mov al, dl
and al, 0x10
push edi
push edx
mov dword [ebp], ecx
mov dword [ebp + 0x20], edi
mov byte [ebp + 0x57], al
mov dword [ebp + 0x4c], 0x10000000
call fcn.0043df40
test al, al
pop ecx
pop ecx
je 0x48d639
mov dword [ebp + 0x4c], 0x18000000
mov eax, edx
and eax, 0x40
xor ecx, ecx
or eax, ecx
je 0x48d648
or byte [ebp + 0x4e], 0x80
mov eax, edx
and eax, 0x80000000
xor ecx, ecx
or eax, edi
je 0x48d657
mov ecx, ebx
mov eax, edx
and eax, 0x80000
xor edi, edi
or eax, edi
jne 0x48d668
or dword [ebp + 0x4c], 8
or dword [ebp + 0x4c], 1
mov eax, edx
and eax, 0x2000
xor edi, edi
or eax, edi
je 0x48d67d
or byte [ebp + 0x4d], 0x40
mov eax, edx
and eax, 0x1000
xor edi, edi
or eax, edi
je 0x48d68e
or byte [ebp + 0x4d], 2
mov eax, edx
and eax, 0x2090000
xor edx, edx
or eax, edx
je 0x48d69f
or dword [ebp + 0x4c], 4
test ecx, ecx
jle 0x48d6a6
or dword [ebp + 0x4c], ecx
push 0x250
call fcn.004aa268
test eax, eax
pop ecx
je 0x48d6c5
push esi
add esi, 0x34
push esi
mov ecx, eax
call fcn.004a3ac6
mov ebx, eax
jmp 0x48d6c7
xor ebx, ebx
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x74]
push dword [ebp + 0x40]
mov dword [eax + 0x1c], ebx
mov dword [ecx], eax
mov eax, dword [ebp + 0x7c]
mov dword [ebx + 0x14c], eax
mov eax, dword [ebp + 0x3c]
push dword [eax + 0x18]
mov eax, dword [ebp + 0x4c]
or eax, dword [ebp + 0x44]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
or eax, 0x40000000
push eax
mov ecx, ebx
movsd dword es:[edi], dword [esi]
call fcn.004a0316
mov ecx, ebx
call fcn.0043de06
push eax
lea ecx, [ebx + 0x84]
call fcn.0049fc52
mov eax, dword [ebp + 0x68]
and eax, 0x4800
xor ecx, ecx
cmp eax, 0x4000
jne 0x48d73f
test ecx, ecx
jne 0x48d73f
push ecx
push dword [ebx + 0x9c]
call dword [sym.imp.USER32.dll_EnableWindow]
or byte [ebx + 0x249], 1
mov eax, dword [ebp + 0x68]
and eax, 0x4000
xor ecx, ecx
xor esi, esi
or eax, ecx
je 0x48d756
or byte [ebx + 0x248], 1
lea ecx, [ebp + 0x7c]
call fcn.00443f5b
mov edi, dword [ebp + 0x60]
cmp word [edi], 0x3d
jne 0x48d79a
inc edi
inc edi
push 0x3a
lea eax, [ebp + 0x60]
mov dword [ebp + 0x60], edi
mov dword [ebp + 0x4c], edi
call fcn.004a7e7b
mov edi, dword [ebp + 0x60]
mov eax, edi
sub eax, dword [ebp + 0x4c]
pop ecx
sar eax, 1
push eax
push dword [ebp + 0x4c]
lea ecx, [ebp + 0x7c]
call fcn.0044407f
cmp word [edi], si
je 0x48d79a
inc edi
inc edi
mov dword [ebp + 0x60], edi
mov ecx, dword [ebp + 0x3c]
call fcn.004970db
fld qword [0x4c2e48]
and byte [ebp + 0x69], 0xf7
fstp qword [ebp + 0x24]
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x6c]
mov dword [ebp + 0x6c], eax
xor eax, eax
mov ax, word [edi]
cmp ax, 0x2a
mov dword [ebp + 0x78], eax
jne 0x48d7c9
mov word [edi], si
lea eax, [ebp + 0x24]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x60]
cmp word [eax], 0x3a
pop ecx
pop ecx
push 2
pop edi
jne 0x48d7e9
add eax, edi
mov dword [ebp + 0x60], eax
mov dword [ebp + 0x50], eax
push 0x3a
lea eax, [ebp + 0x50]
call fcn.004a7e7b
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
je 0x48d805
mov word [eax], si
add dword [ebp + 0x50], edi
fld qword [0x4c2e48]
or dword [ebp + 0x38], 0xffffffff
fst qword [ebp - 0x30]
lea eax, [ebp - 0x30]
fldz
push eax
fstp qword [ebp - 0x38]
lea eax, [ebp + 0x50]
push eax
mov dword [ebp + 0x44], 0x80000000
fst qword [ebp - 0x1c]
fst qword [ebp - 0x28]
fst qword [ebp + 0xc]
fstp qword [ebp - 0x14]
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.004404ef
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044730c
mov eax, dword [ebp + 0x50]
cmp word [eax], si
pop ecx
pop ecx
je 0x48d8f7
add dword [ebp + 0x50], edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.004473b2
pop ecx
pop ecx
fld qword [ebp + 0x24]
mov esi, dword [sym.imp.GDI32.dll_GetObjectW]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
je 0x48d921
mov eax, dword [ebp + 0x60]
cmp word [eax], 0
jne 0x48d921
cmp word [ebp + 0x78], 0
je 0x48d9b3
and dword [ebp - 0xe8], 0
fld qword [ebp + 0x24]
push 0x16
fstp qword [ebp + 4]
pop ecx
xor eax, eax
lea edi, [ebp - 0xe4]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0xe8]
push eax
push 0x5c
push dword [ebp + 0x4c]
call esi
fld qword [ebp + 0xc]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
jne 0x48d96e
fld qword [ebp + 0xc]
push ecx
push ecx
fstp qword [esp]
call fcn.00443546
pop ecx
pop ecx
mov dword [ebp - 0xe8], eax
fld qword [ebp - 0x14]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
jne 0x48d993
fld qword [ebp - 0x14]
push ecx
push ecx
fstp qword [esp]
call fcn.00443546
pop ecx
pop ecx
mov dword [ebp - 0xe4], eax
push dword [ebp + 0x60]
lea eax, [ebp + 4]
push eax
lea eax, [ebp - 0xe8]
push eax
call fcn.00478b31
add esp, 0xc
test eax, eax
mov dword [ebx + 0x48], eax
je 0x48d9b3
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x3c]
push dword [eax + 0x18]
lea ecx, [ebp + 0xc]
call fcn.00401034
push dword [ebp + 0xc]
call dword [sym.imp.GDI32.dll_GetBkColor]
push eax
mov ecx, ebx
call fcn.0043de57
lea ecx, [ebp + 0xc]
call fcn.0040104d
push dword [ebp + 0x60]
lea eax, [ebp + 0x24]
push eax
push dword [ebp + 0x4c]
call fcn.004827bf
fld qword [ebp + 0x24]
fcomp qword [0x4c0930]
mov dword [ebx + 0x150], eax
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x48da0b
fld qword [ebp + 0x24]
fstp qword [ebx + 0x230]
fld qword [ebp - 0x14]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
jne 0x48da24
fld qword [ebp - 0x14]
fstp qword [ebx + 0x238]
push 1
push dword [ebx + 0x18]
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
mov eax, dword [ebx]
push 1
push dword [ebp + 0x4c]
mov ecx, ebx
call dword [eax + 0x80]
mov eax, dword [ebp + 0x44]
test eax, eax
jl 0x48da4a
movzx edx, al
jmp 0x48da4d
or edx, 0xffffffff
test eax, eax
jl 0x48da56
movzx ecx, ah
jmp 0x48da59
or ecx, 0xffffffff
test eax, eax
jl 0x48da65
sar eax, 0x10
movzx eax, al
jmp 0x48da68
or eax, 0xffffffff
fld qword [ebp - 0x38]
push ecx
fstp dword [esp]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.004a0b29
and dword [ebp - 0x144], 0
push 0x16
pop ecx
xor eax, eax
lea edi, [ebp - 0x140]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x144]
push eax
push 0x5c
push dword [ebp + 0x4c]
call esi
fld qword [0x4c79f0]
fstp qword [ebp + 4]
fld qword [ebp - 0x1c]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
jne 0x48dac9
fld qword [ebp - 0x1c]
push ecx
push ecx
fstp qword [esp]
call fcn.00443546
pop ecx
pop ecx
mov dword [ebp - 0x144], eax
fld qword [ebp - 0x28]
fcomp qword [0x4c0930]
fnstsw ax
test ah, 0x41
jne 0x48daee
fld qword [ebp - 0x28]
push ecx
push ecx
fstp qword [esp]
call fcn.00443546
pop ecx
pop ecx
mov dword [ebp - 0x140], eax
push dword [ebp + 0x70]
lea eax, [ebp + 4]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.00478b31
mov dword [ebx + 0x120], eax
mov eax, dword [ebp + 0x68]
and eax, 0x80
xor ecx, ecx
add esp, 0xc
or eax, ecx
je 0x48db1f
or byte [ebx + 0x248], 4
mov ecx, dword [ebp + 0x68]
mov eax, ecx
and eax, 0x100
xor edx, edx
or eax, edx
je 0x48db36
or byte [ebx + 0x248], 8
mov eax, ecx
and eax, 0x3800200
xor edx, edx
xor esi, esi
or eax, edx
jne 0x48db46
inc esi
mov eax, ecx
mov edi, 0x400
and eax, edi
xor edx, edx
or eax, edx
je 0x48db58
or esi, 4
mov eax, ecx
and eax, 0x4000
xor edx, edx
or eax, edx
je 0x48db6c
or byte [ebx + 0x248], 1
cmp dword [ebp - 0x20], 0
je 0x48db75
or esi, 0x10
mov eax, ecx
and eax, 0x20000
xor ecx, ecx
or eax, ecx
je 0x48db88
or esi, 0x8000
mov ecx, ebx
call fcn.0043de44
or esi, eax
mov eax, dword [ebp + 0x68]
and eax, 0x600000
xor ecx, ecx
or eax, ecx
je 0x48dba2
or esi, 4
push esi
mov ecx, ebx
call fcn.004a0382
mov eax, dword [ebp + 0x68]
and eax, 0x10000
xor ecx, ecx
or eax, ecx
je 0x48dbc2
mov eax, dword [ebp + 0x6c]
and byte [ebp + 0x6a], 0xf7
mov dword [ebp + 0x6c], eax
mov edx, dword [ebp + 0x68]
mov eax, edx
and eax, 0x40000
xor ecx, ecx
or eax, ecx
je 0x48dbd9
or byte [ebx + 0x248], 2
mov eax, edx
and eax, 0x80000
xor ecx, ecx
or eax, ecx
je 0x48dbed
or byte [ebx + 0x248], 0x20
mov eax, edx
and eax, 0x100000
xor ecx, ecx
or eax, ecx
je 0x48dc01
or byte [ebx + 0x248], 0x40
mov eax, edx
and eax, 0x200000
xor ecx, ecx
or eax, ecx
je 0x48dc15
or word [ebx + 0x248], di
mov eax, edx
and eax, 0x400000
xor ecx, ecx
or eax, ecx
je 0x48dc29
or byte [ebx + 0x249], 0xc
mov eax, edx
and eax, 0x800000
xor ecx, ecx
or eax, ecx
je 0x48dc3d
or byte [ebx + 0x249], 0x18
mov eax, edx
and eax, 0x1000000
xor ecx, ecx
or eax, ecx
je 0x48dc51
or byte [ebx + 0x249], 0x28
mov al, byte [ebp + 0x20]
and al, 1
mov byte [ebp + 0x63], al
je 0x48dc62
or byte [ebx + 0x249], 2
or dword [ebp - 0xc], 0xffffffff
or dword [ebp - 8], 0xffffffff
or dword [ebp - 4], 0xffffffff
xor eax, eax
mov esi, 0x80000000
mov dword [ebp], esi
lea edi, [ebp + 4]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp + 0x64]
mov dword [ebp + 0x4c], eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 0x64]
push eax
call fcn.00446e83
cmp dword [ebp - 0xc], 0
pop ecx
pop ecx
jl 0x48dca2
push dword [ebp - 0xc]
mov ecx, ebx
call fcn.0043de57
mov eax, dword [ebp - 8]
test eax, eax
jl 0x48dcb7
push eax
mov ecx, ebx
mov dword [ebx + 0x21c], eax
call fcn.0043de6e
mov eax, dword [ebp - 4]
test eax, eax
jl 0x48dccc
push eax
mov ecx, ebx
mov dword [ebx + 0x218], eax
call fcn.004a0b83
mov eax, dword [ebp]
cmp eax, esi
jne 0x48dd35
mov eax, dword [ebp + 0x68]
and eax, 0x50000
xor ecx, ecx
or eax, ecx
jne 0x48dd29
push 0x23
pop edi
push edi
lea eax, [ebp + 0x4c]
call fcn.004a7e7b
mov eax, dword [ebp + 0x4c]
cmp word [eax], di
pop ecx
jne 0x48dd04
add dword [ebp + 0x4c], 2
push edi
lea eax, [ebp + 0x4c]
call fcn.004a7e7b
pop ecx
mov eax, dword [ebp + 0x4c]
cmp word [eax], di
jne 0x48dd1a
add dword [ebp + 0x4c], 2
push edi
lea eax, [ebp + 0x4c]
call fcn.004a7e7b
pop ecx
mov eax, dword [ebp + 0x4c]
cmp word [eax], di
jne 0x48dd3b
cmp word [eax + 2], 0x2a
jne 0x48dd3b
push 0xd
call dword [sym.imp.USER32.dll_GetSysColor]
cmp eax, esi
je 0x48dd3b
mov dword [ebx + 0x220], eax
xor ecx, ecx
cmp dword [ebx + 0x220], ecx
jl 0x48dd58
mov eax, dword [ebp + 0x68]
and eax, 0x10000
or eax, ecx
je 0x48dd58
or byte [ebx + 0x248], 0x10
push 7
pop edx
xor eax, eax
mov ecx, edx
lea edi, [ebp - 0x54]
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x58]
mov eax, dword [eax]
xor ecx, ecx
push 0x30
pop edi
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x58], edx
mov dword [ebp + 0x48], eax
cmp word [eax], cx
mov dword [ebp + 0x1c], ecx
mov dword [ebp + 0x20], ecx
mov dword [ebp + 0x24], ecx
mov dword [ebp + 0x28], ecx
mov ecx, dword [ebp + 0x3c]
mov esi, dword [ecx + 0xec]
sete byte [ebp + 0x67]
cmp dword [ebx + 0x220], 0
jl 0x48dda5
test byte [ebx + 0x248], 0x10
jne 0x48ddae
test byte [ebx + 0x248], 0x20
je 0x48ddb8
or byte [ebx + 0x248], 0x80
mov eax, dword [ebp + 0x48]
and dword [ebp + 0x3c], 0
jmp 0x48de70
push dword [ebp + 0x14]
and dword [ebp + 0x74], 0
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp + 0x78]
push eax
lea eax, [ebp + 0x4c]
push eax
lea eax, [ebp + 0x74]
push eax
lea eax, [ebp + 0x48]
push eax
lea eax, [ebp - 0x58]
push eax
mov dword [ebp + 0x4c], 0x80000000
mov dword [ebp + 0x44], 2
mov byte [ebp + 0x78], 0
call fcn.0048d3f2
add esp, 0x1c
test eax, eax
jge 0x48de04
cmp dword [ebp + 0x4c], 0
jl 0x48de12
push dword [ebp + 0x4c]
mov ecx, ebx
push eax
push dword [ebp + 0x3c]
call fcn.004a396a
mov eax, dword [ebp - 0x50]
cdq
add dword [ebp + 0x1c], eax
adc dword [ebp + 0x20], edx
test esi, esi
jle 0x48de41
push dword [ebp + 0x20]
mov eax, esi
push dword [ebp + 0x1c]
cdq
push edx
push eax
call fcn.004aa130
push 0
push 0x60
push edx
push eax
call fcn.004aa5f0
sub eax, dword [ebp + 0x24]
mov dword [ebp - 0x50], eax
push dword [ebp + 0x44]
lea eax, [ebp - 0x58]
push dword [ebp + 0x78]
mov ecx, ebx
push eax
push dword [ebp + 0x3c]
call fcn.004a1934
mov eax, dword [ebp - 0x50]
cdq
add dword [ebp + 0x24], eax
lea ecx, [ebp + 0x74]
mov dword [ebp - 0x54], edi
adc dword [ebp + 0x28], edx
call fcn.0043db4f
inc dword [ebp + 0x3c]
mov eax, dword [ebp + 0x48]
cmp word [eax], 0
jne 0x48ddc1
fld qword [ebp - 0x30]
mov eax, dword [ebp + 0x3c]
fcomp qword [0x4c0930]
mov ecx, dword [ebp + 0x2c]
mov dword [ecx + 0x40], eax
fnstsw ax
test ah, 0x41
jne 0x48dea1
fld qword [ebp - 0x30]
push ecx
mov ecx, ebx
fstp dword [esp]
call fcn.004a0b60
cmp dword [ebp + 0x38], 0
jle 0x48deb1
push dword [ebp + 0x38]
mov ecx, ebx
call fcn.004a0b6d
xor eax, eax
push 0xc
pop ecx
lea edi, [ebp - 0x88]
rep stosd dword es:[edi], eax
and dword [ebp - 0x84], eax
mov eax, dword [ebp + 0x5c]
mov edi, dword [eax]
mov dword [ebp - 0x88], 0x7fffffff
mov dword [ebp - 0x8c], 1
mov dword [ebp - 0x78], 0x4bca0c
cmp word [edi], 0
mov dword [ebp + 0x4c], edi
je 0x48e01e
cmp word [ebp + 0x18], 0
mov dword [ebp + 0x48], edi
lea eax, [ebp + 0x4c]
jne 0x48df15
call fcn.00405639
mov edi, dword [ebp + 0x4c]
cmp word [edi], 0xd
mov eax, edi
jne 0x48df23
inc edi
inc edi
mov dword [ebp + 0x4c], edi
jmp 0x48df23
push dword [ebp + 0x18]
call fcn.004a7e7b
mov edi, dword [ebp + 0x4c]
pop ecx
mov eax, edi
cmp word [edi], 0
je 0x48df2e
inc edi
inc edi
mov dword [ebp + 0x4c], edi
xor esi, esi
cmp word [eax], si
je 0x48df38
mov word [eax], si
mov dword [ebp + 0x38], esi
mov dword [ebp + 0x3c], esi
jmp 0x48e009
cmp byte [ebp + 0x67], 0
jne 0x48df58
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x3c]
cmp ecx, dword [eax + 0x40]
jge 0x48e015
cmp byte [ebp + 0x63], 0
mov eax, dword [ebp + 0x48]
mov dword [ebp + 0x44], eax
lea eax, [ebp + 0x48]
je 0x48df6f
push eax
call fcn.00405615
jmp 0x48df77
push dword [ebp + 0x14]
call fcn.004a7e7b
pop ecx
mov ecx, dword [ebp + 0x48]
cmp word [ecx], si
je 0x48df8b
mov word [ecx], si
mov ecx, dword [ebp + 0x48]
inc ecx
inc ecx
mov dword [ebp + 0x48], ecx
cmp byte [ebp + 0x63], 0
je 0x48dfa8
cmp ecx, esi
je 0x48dfa8
jmp 0x48df9c
inc ecx
inc ecx
mov dword [ebp + 0x48], ecx
mov ax, word [ecx]
call fcn.0043dac8
test al, al
jne 0x48df97
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x3c]
mov eax, dword [eax + 0x40]
cmp ecx, eax
mov dword [ebp - 0x84], ecx
jl 0x48dfd3
mov edx, dword [ebp + 0x2c]
lea ecx, [eax + 1]
push 2
mov dword [edx + 0x40], ecx
push esi
lea ecx, [ebp - 0x58]
push ecx
push eax
mov ecx, ebx
call fcn.004a1934
cmp dword [ebp + 0x3c], esi
mov eax, dword [ebp + 0x44]
mov dword [ebp - 0x78], eax
jne 0x48dff1
lea eax, [ebp - 0x8c]
push eax
mov ecx, ebx
call fcn.004a039c
mov dword [ebp + 0x38], eax
jmp 0x48e006
cmp word [eax], si
je 0x48e006
push dword [ebp + 0x44]
mov ecx, ebx
push dword [ebp + 0x3c]
push dword [ebp + 0x38]
call fcn.0043de19
inc dword [ebp + 0x3c]
mov eax, dword [ebp + 0x48]
cmp word [eax], si
jne 0x48df43
cmp word [edi], si
jne 0x48def1
push dword [ebp + 0x6c]
mov ecx, ebx
push dword [ebp + 0x68]
call fcn.004a0399
push 0x32
pop ecx
push ecx
mov eax, ecx
push eax
push 1
mov ecx, ebx
call fcn.0043de85
cmp byte [ebp + 0x57], 0
je 0x48e04c
push 0
push dword [ebx + 0x18]
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [ebp + 0x2c]
xor eax, eax
cmp byte [ebp + 0x57], al
sete al
push eax
call fcn.004384fc
mov ecx, ebx
call fcn.0049fd1e
lea ecx, [ebp + 0x7c]
call fcn.0043db4f
push 0x4d8d24
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp + 0x2c]
pop edi
pop esi
pop ebx
add ebp, 0x30
leave
ret 0x48