Function at 0x433b00
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
push ebx
push esi
push edi
mov ebx, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
cmp eax, 0x20e2
jg 0x433b35
je 0x433b6f
sub eax, 0x1062
je 0x433b50
sub eax, 0x104e
je 0x433bbd
jmp 0x434717
sub eax, 0x4090
je 0x4341e4
sub eax, 0x4032
je 0x434702
jmp 0x434717
mov eax, dword [0x4cca24]
test eax, eax
je 0x433b68
cmp eax, dword [ebp + 0x18]
jne 0x433b68
mov eax, 1
jmp 0x434729
xor eax, eax
jmp 0x434729
mov eax, dword [0x4cca24]
test eax, eax
je 0x434727
cmp eax, dword [ebp + 0x18]
jne 0x434727
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0x2c], edx
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0x28], ecx
xor eax, eax
mov dword [ebp - 0x24], eax
xor edx, edx
mov dword [ebp - 0x20], edx
push 0
push edi
push 0
push 0
push 0x10
lea ecx, [ebp - 0x2c]
push ecx
mov eax, dword [0x4cca2c]
push eax
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
cmp dword [0x4cca24], 0
je 0x434727
mov byte [0x4dd4c7], 0
test esi, esi
je 0x433bf1
push 0x3ec
push 0x100
push 0x4dd4c7
push esi
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeQueryStringA
cmp byte [0x4dd4c7], 0
je 0x434727
push str.VERSION
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433c56
push 0x4d1280
push str.H_BIRC__s
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
push edi
push esi
push 0
push 0x4dd0e0
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4dd0e0
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.INIFILE
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433ca1
push str.mirc.ini
call fcn.004c408c
pop ecx
push 0
push edi
push esi
push 0
push str.mirc.ini
call fcn.004bceac
pop ecx
add eax, 5
push eax
push str.mirc.ini
mov eax, dword [0x4cca2c]
push eax
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.EXENAME
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433d03
push 0x3e7
push 0x4dd0e0
mov edx, dword [0x4d4298]
push edx
call sub.KERNEL32.dll_GetModuleFileNameA
push 0x4dd0e0
call fcn.004c408c
pop ecx
push 0
push edi
push esi
push 0
push 0x4dd0e0
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4dd0e0
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.NICKNAME
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433d65
push 0
push edi
push esi
push 0
mov eax, dword [0x4d17b0]
shl eax, 2
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
add eax, 0x4d16e8
push eax
call fcn.004bceac
pop ecx
add eax, 5
push eax
mov edx, dword [0x4d17b0]
shl edx, 2
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, 0x4d16e8
push edx
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.SERVERPORT
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433dc5
movzx eax, word [0x4d1ad4]
push eax
push 0x4d1a70
push str._s:_d
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0x10
push 0
push edi
push esi
push 0
push 0x4dd0e0
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4dd0e0
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.SERVER
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433e06
push 0
push edi
push esi
push 0
push 0x4d1a70
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4d1a70
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.PORT
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433e61
movzx eax, word [0x4d1ad4]
push eax
push 0x4ccc4d
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
push edi
push esi
push 0
push 0x4dd0e0
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4dd0e0
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.SAMBUNGAN
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x433f00
cmp dword [0x4d4908], 0
je 0x433e9b
push esi
push edi
mov esi, 0x4ccc5c
mov edi, 0x4dd0e0
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x433ed5
push 0
call fcn.0042b390
test eax, eax
jne 0x433ec1
push esi
push edi
mov esi, str.tidak_online
mov edi, 0x4dd0e0
mov eax, edi
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
pop esi
jmp 0x433ed5
push esi
push edi
mov esi, str.sambungan
mov edi, 0x4dd0e0
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
pop esi
push 0
push edi
push esi
push 0
push 0x4dd0e0
call fcn.004bceac
pop ecx
add eax, 5
push eax
push 0x4dd0e0
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
push str.CHANNELS
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x43402a
xor ecx, ecx
mov dword [ebp - 8], ecx
mov ebx, dword [0x4d4294]
test ebx, ebx
je 0x433f4f
cmp byte [ebx + 0x4cc], 1
jne 0x433f45
lea eax, [ebx + 4]
push eax
call fcn.004bceac
pop ecx
add eax, dword [ebp - 8]
add eax, 3
mov dword [ebp - 8], eax
mov ebx, dword [ebx + 0x744]
test ebx, ebx
jne 0x433f29
cmp dword [ebp - 8], 0
jne 0x433f73
push 0
push edi
push esi
push 0
push 5
push 0x4ccc8c
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeCreateDataHandle
jmp 0x434729
mov ecx, dword [ebp - 8]
push ecx
call fcn.004c75a4
pop ecx
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x434727
mov eax, dword [ebp - 4]
mov byte [eax], 0
mov ebx, dword [0x4d4294]
test ebx, ebx
je 0x433ff4
cmp byte [ebx + 0x4cc], 1
jne 0x433fea
mov eax, dword [ebp - 4]
cmp byte [eax], 0
je 0x433fbc
push 0x4ccc90
mov edx, dword [ebp - 4]
push edx
call fcn.004bcdd0
add esp, 8
mov eax, dword [0x4d42a8]
test eax, eax
je 0x433fda
cmp eax, dword [ebx]
jne 0x433fda
push 0x4ccc93
mov edx, dword [ebp - 4]
push edx
call fcn.004bcdd0
add esp, 8
lea ecx, [ebx + 4]
push ecx
mov eax, dword [ebp - 4]
push eax
call fcn.004bcdd0
add esp, 8
mov ebx, dword [ebx + 0x744]
test ebx, ebx
jne 0x433f9a
push 0
push edi
push esi
push 0
mov edx, dword [ebp - 4]
push edx
call fcn.004bceac
pop ecx
add eax, 5
push eax
mov ecx, dword [ebp - 4]
push ecx
mov eax, dword [0x4cca2c]
push eax
call sub.USER32.dll_DdeCreateDataHandle
mov ebx, eax
mov eax, dword [ebp - 4]
push eax
call fcn.004c749c
pop ecx
mov eax, ebx
jmp 0x434729
push str.USERS
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x434727
cmp dword [ebp + 0x18], 0
je 0x434727
push 0x3ec
push 0x64
push 0x4dcfac
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeQueryStringA
cmp byte [0x4dcfac], 0
je 0x434727
push 0x4dcfac
call fcn.0046421c
test al, al
je 0x434727
push 0x4dcfac
call fcn.004b78d4
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x434727
mov eax, dword [ebp - 0xc]
cmp byte [eax + 0x4cc], 1
jne 0x434727
xor edx, edx
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ecx + 0x4b0]
test ebx, ebx
je 0x4340db
mov eax, dword [ebx]
push eax
call fcn.004bceac
pop ecx
add eax, dword [ebp - 0x14]
add eax, 3
mov dword [ebp - 0x14], eax
mov ebx, dword [ebx + 0x2c]
test ebx, ebx
jne 0x4340c2
push 0x4dcfac
call fcn.004bceac
pop ecx
add eax, dword [ebp - 0x14]
add eax, 2
push eax
call fcn.004c75a4
pop ecx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x434727
mov edx, dword [ebp - 0x10]
push esi
push edi
mov esi, edx
mov edi, 0x4dcfac
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax + 0x4b0]
test ebx, ebx
je 0x4341a8
push 0x4ccc9d
mov eax, dword [ebp - 0x10]
push eax
call fcn.004bcdd0
add esp, 8
test byte [ebx + 0x18], 2
je 0x434162
push 0x4ccca0
mov edx, dword [ebp - 0x10]
push edx
call fcn.004bcdd0
add esp, 8
jmp 0x434192
test byte [ebx + 0x18], 4
je 0x43417b
push 0x4ccca3
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bcdd0
add esp, 8
jmp 0x434192
test byte [ebx + 0x18], 8
je 0x434192
push 0x4ccca6
mov eax, dword [ebp - 0x10]
push eax
call fcn.004bcdd0
add esp, 8
mov edx, dword [ebx]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bcdd0
add esp, 8
mov ebx, dword [ebx + 0x2c]
test ebx, ebx
jne 0x434138
push 0
push edi
push esi
push 0
mov eax, dword [ebp - 0x10]
push eax
call fcn.004bceac
pop ecx
add eax, 5
push eax
mov edx, dword [ebp - 0x10]
push edx
mov ecx, dword [0x4cca2c]
push ecx
call sub.USER32.dll_DdeCreateDataHandle
mov ebx, eax
mov eax, dword [ebp - 0x10]
push eax
call fcn.004c749c
pop ecx
mov eax, ebx
jmp 0x434729
cmp dword [0x4cca24], 0
je 0x434727
mov byte [0x4dd4c7], 0
test esi, esi
je 0x434218
push 0x3ec
push 0x100
push 0x4dd4c7
push esi
mov edx, dword [0x4cca2c]
push edx
call sub.USER32.dll_DdeQueryStringA
cmp byte [0x4dd4c7], 0
je 0x434727
push str.COMMAND
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x434306
test ebx, ebx
je 0x4342fc
lea ecx, [ebp - 0x18]
push ecx
push ebx
call sub.USER32.dll_DdeAccessData
mov esi, eax
test esi, esi
je 0x43427f
push esi
mov edi, esi
mov esi, 0x4dd0e0
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x434286
mov byte [0x4dd0e0], 0
push ebx
call sub.USER32.dll_DdeUnaccessData
push ebx
call sub.USER32.dll_DdeFreeDataHandle
cmp byte [0x4dd0e0], 0
je 0x4342fc
mov eax, dword [0x4d42a8]
push eax
call fcn.004b7934
test eax, eax
je 0x4342e7
mov dl, byte [eax + 0x4cc]
cmp dl, 1
je 0x4342ba
cmp dl, 2
jne 0x4342d1
push 4
push 0
push 0x4dd0e0
mov ecx, dword [0x4d42a8]
push ecx
call fcn.00460104
jmp 0x4342fc
push 4
push 0
push 0x4dd0e0
mov eax, dword [0x4d42ac]
push eax
call fcn.00460104
jmp 0x4342fc
push 4
push 0
push 0x4dd0e0
mov edx, dword [0x4d42ac]
push edx
call fcn.00460104
mov eax, 0x8000
jmp 0x434729
push 0x4cccb2
push 0x4dd4c7
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x4346fe
test ebx, ebx
je 0x4346f7
mov byte [0x4dd0e0], 0
lea edx, [ebp - 0x1c]
push edx
push ebx
call sub.USER32.dll_DdeAccessData
mov esi, eax
test esi, esi
je 0x434367
push esi
mov edi, esi
mov esi, 0x4dd0e0
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x43436e
mov byte [0x4dd0e0], 0
push ebx
call sub.USER32.dll_DdeUnaccessData
push ebx
call sub.USER32.dll_DdeFreeDataHandle
cmp byte [0x4dd0e0], 0
je 0x4346f7
mov esi, 0x4dd010
mov edi, 0x4d1a70
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [0x4dd074], 0
mov dword [0x4dd0d8], 0x1a0b
xor eax, eax
mov dword [0x4dd0dc], eax
mov ebx, 0x4dd0e0
jmp 0x4344d8
inc ebx
cmp byte [ebx], 0x20
je 0x4343d2
cmp byte [ebx], 0
je 0x4344e1
push 0x2c
push ebx
call fcn.004bce0c
add esp, 8
mov esi, eax
test esi, esi
je 0x4343f6
mov byte [esi], 0
inc esi
cmp byte [ebx], 0
je 0x4344d2
push ebx
call fcn.0046421c
test al, al
je 0x434444
push ebx
call fcn.004bceac
pop ecx
cmp eax, 0x5a
jbe 0x434419
mov byte [ebx + 0x5a], 0
push esi
mov esi, 0x4dd074
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x4344d2
push 0x4cccbb
push ebx
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x434462
mov dword [0x4dd0dc], 1
jmp 0x4344d2
push 0x4cccbe
push ebx
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x43447d
xor eax, eax
mov dword [0x4dd0dc], eax
jmp 0x4344d2
xor edx, edx
mov dl, byte [ebx]
test byte [edx*2 + str.________________________________H], 4
je 0x434499
push ebx
call fcn.004c4ccc
pop ecx
mov dword [0x4dd0d8], eax
jmp 0x4344d2
push 0x2e
push 0x4dd010
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x4344d2
push esi
mov esi, 0x4dd010
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
test esi, esi
je 0x4344e1
mov ebx, esi
cmp byte [ebx], 0
jne 0x4343d3
push 0x20
push 0x4dd010
call fcn.004bce0c
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x4344f9
mov byte [ebx], 0
cmp byte [0x4dd074], 0
je 0x434529
push 0x20
push 0x4dd074
call fcn.004bd108
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x434529
mov esi, ebx
jmp 0x43451c
inc esi
cmp byte [esi], 0x20
je 0x43451b
cmp byte [esi], 0
jne 0x434529
mov byte [ebx], 0
cmp dword [0x4d490c], 0
je 0x43453b
cmp dword [0x4d4900], 0xffffffff
jne 0x434548
cmp dword [0x4d4908], 0
je 0x43463c
push 0x4d1a70
push 0x4dd010
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x4345c8
cmp dword [0x4d4908], 0
je 0x434593
mov esi, 0x4dc938
mov edi, 0x4dd074
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4346ae
cmp byte [0x4dd074], 0
je 0x4346ae
push 0x4dd074
push 0x4cccc1
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
push 0x4dd0e0
call fcn.004bc170
jmp 0x4346ae
cmp byte [0x4dd010], 0
je 0x4345f0
mov eax, dword [0x4dd0d8]
push eax
push 0x4dd010
push 0x4ccccb
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0x10
jmp 0x4345fe
mov esi, 0x4cccda
mov edi, 0x4dd0e0
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0
push 0
push 0x4dd0e0
mov edx, dword [0x4d42ac]
push edx
call fcn.00460104
mov esi, 0x4dc938
mov edi, 0x4dd074
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4346ae
cmp byte [0x4dd010], 0
je 0x434664
mov eax, dword [0x4dd0d8]
push eax
push 0x4dd010
push str._server__s__d
push 0x4dd0e0
call sub.USER32.dll_wsprintfA
add esp, 0x10
jmp 0x434672
mov esi, str._server
mov edi, 0x4dd0e0
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0
push 0
push 0x4dd0e0
mov edx, dword [0x4d42ac]
push edx
call fcn.00460104
mov esi, 0x4dc938
mov edi, 0x4dd074
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp dword [0x4dd0dc], 0
je 0x4346f7
push 9
mov eax, dword [0x4d429c]
push eax
call sub.USER32.dll_ShowWindow
push 0x63
push 0
push 0
push 0
push 0
push 0
mov edx, dword [0x4d429c]
push edx
call sub.USER32.dll_SetWindowPos
mov ecx, dword [0x4d429c]
push ecx
call sub.USER32.dll_SetForegroundWindow
mov eax, dword [0x4d42a8]
test eax, eax
je 0x4346f7
push eax
call sub.USER32.dll_SetFocus
mov eax, 0x8000
jmp 0x434729
xor eax, eax
jmp 0x434729
mov edx, dword [ebp + 0x10]
cmp edx, dword [0x4cca28]
jne 0x434727
xor ecx, ecx
mov dword [0x4cca28], ecx
jmp 0x434727
cmp dword [ebp + 0x10], 0
jne 0x434727
cmp dword [ebp + 0x20], 0
jne 0x434727
cmp dword [ebp + 0x24], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20