Function at 0x4b2000
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x535ca9
mov eax, dword fs:[0]
push eax
sub esp, 0x40
push ebx
push esi
push edi
mov eax, dword [0x58c250]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, edi
call fcn.004b0d20
mov dword [ebp - 0x18], eax
cmp eax, 0xffffffff
jne 0x4b205a
or eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
xor ebx, ebx
cmp dword [edi + 0x38], ebx
jbe 0x4b2149
xor esi, esi
cmp ebx, dword [edi + 0x38]
jae 0x4b2173
mov eax, dword [edi + 0x34]
mov ecx, dword [edi + 0x14]
xor edx, edx
test ecx, ecx
setne dl
test edx, edx
je 0x4b217d
mov eax, dword [eax + esi + 0x10]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4b20b6
test dx, dx
je 0x4b20b2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4b20b6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4b2090
xor eax, eax
jmp 0x4b20bb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
test al, al
je 0x4b213c
cmp ebx, dword [edi + 0x38]
jae 0x4b2173
mov eax, dword [edi + 0x34]
mov ecx, dword [edi + 0x18]
xor edx, edx
test ecx, ecx
setne dl
test edx, edx
je 0x4b217d
mov eax, dword [eax + esi + 0x14]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4b210c
test dx, dx
je 0x4b2108
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4b210c
add eax, 4
add ecx, 4
test dx, dx
jne 0x4b20e6
xor eax, eax
jmp 0x4b2111
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
test al, al
je 0x4b213c
cmp ebx, dword [edi + 0x38]
jae 0x4b2173
mov eax, dword [edi + 0x34]
add eax, esi
lea edx, [edi + 0x10]
push edx
add eax, 0xc
push eax
call fcn.0041f290
add esp, 8
test al, al
jne 0x4b2900
inc ebx
add esi, 0x30
cmp ebx, dword [edi + 0x38]
jb 0x4b2070
lea esi, [edi + 0x34]
mov dword [ebp + 0xc], esi
mov ebx, dword [esi + 4]
mov dword [ebp + 8], ebx
cmp ebx, dword [esi + 8]
jb 0x4b2187
lea eax, [ebx + 1]
push eax
mov ecx, esi
call fcn.004b0880
test al, al
jne 0x4b2187
push 0x8007000e
call fcn.004013f0
push 0x80070057
call fcn.004013f0
push 0x80004005
call fcn.004013f0
lea ecx, [ebx + ebx*2]
shl ecx, 4
add ecx, dword [esi]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 0
je 0x4b21a4
lea edx, [edi + 4]
push edx
call fcn.004b0930
mov dword [ebp - 4], 0xffffffff
inc dword [esi + 4]
mov esi, dword [ebp + 0x14]
mov eax, dword [esi + 0x18]
sub eax, 0x10
push eax
call fcn.00401500
add esp, 4
add eax, 0x10
mov dword [ebp + 0x14], eax
mov dword [ebp - 4], 2
mov eax, dword [esi + 0x1c]
cmp dword [eax - 0xc], 0
jle 0x4b21ea
mov ecx, eax
push ecx
push 0x53d4e4
lea edx, [ebp + 0x14]
push edx
call fcn.00402550
add esp, 0xc
cmp dword [ebp + 0x18], 0
je 0x4b2926
push ecx
mov dword [ebp + 0xc], esp
mov ebx, esp
mov dword [ebp + 8], ebx
mov eax, dword [edi + 0x14]
sub eax, 0x10
push eax
call fcn.00401500
add esp, 4
add eax, 0x10
mov dword [ebx], eax
mov byte [ebp - 4], 4
mov byte [ebp - 4], 2
mov ecx, dword [ebp + 0x18]
call fcn.004aa150
test al, al
je 0x4b2924
mov byte [ebp - 4], 5
wait
mov eax, dword [edi + 0x28]
mov ecx, dword [edi + 0x24]
push eax
push ecx
call fcn.004420e0
add esp, 8
fcom qword [esi + 8]
fnstsw ax
test ah, 0x41
jp 0x4b28d0
fcomp qword [esi]
fnstsw ax
test ah, 1
jne 0x4b28d2
push 0x53d168
lea ecx, [ebp - 0x14]
call fcn.004050e0
mov byte [ebp - 4], 6
mov dword [ebp + 0xc], 0
mov byte [ebp - 4], 7
lea ecx, [ebp + 8]
call fcn.00401a00
mov byte [ebp - 4], 8
movzx eax, byte [edi + 0x1c]
dec eax
cmp eax, 7
ja case.default.0x4b228b
jmp dword [eax*4 + 0x4b2fd4]
push str.vkontakte
jmp 0x4b22cf
push str.facebook
jmp 0x4b22cf
push str.odnoklassniki
jmp 0x4b22cf
push str.twitter
jmp 0x4b22cf
push str.YouTube
jmp 0x4b22cf
push str.myspace
jmp 0x4b22cf
push str.linkedin
jmp 0x4b22cf
push str.moikrug
jmp 0x4b22cf
push 0x53ee40
lea ecx, [ebp + 8]
call fcn.0041afc0
push 0x17
push 0
push 0x53f894
lea ecx, [ebp + 0xc]
call fcn.004591d0
test eax, eax
jns 0x4b2308
push str._attrs.CreateInstance___uuidof__MSXML2::SAXAttributes30__
push eax
lea ecx, [ebp - 0x3c]
call fcn.00412090
push 0x569810
lea eax, [ebp - 0x3c]
push eax
call fcn.004f08d9
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
mov edx, dword [ebp + 8]
push edx
call fcn.004050e0
mov byte [ebp - 4], 9
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0xa
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.SNetwork
call fcn.004050e0
mov byte [ebp - 4], 0xb
push ecx
mov dword [ebp - 0x28], esp
mov eax, esp
mov esi, dword [ebp - 0x14]
mov dword [eax], esi
mov ebx, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
test esi, esi
je 0x4b235e
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0xc
push ecx
mov dword [ebp - 0x2c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2374
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2389
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 8
call fcn.0045b3e0
mov eax, dword [edi + 0x24]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0xe
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0xf
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartGDate
call fcn.004050e0
mov byte [ebp - 4], 0x10
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b23df
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x11
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b23f5
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b240a
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 8
call fcn.0045b3e0
mov eax, dword [edi + 0x28]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x14
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartGTime
call fcn.004050e0
mov byte [ebp - 4], 0x15
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2460
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x16
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2476
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b248b
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 8
call fcn.0045b3e0
lea ecx, [ebp + 0x18]
call fcn.00401a00
mov bl, 0x18
mov byte [ebp - 4], bl
movzx eax, byte [edi + 4]
dec eax
cmp eax, 8
ja case.default.0x4b24ab
jmp dword [eax*4 + 0x4b2ff4]
lea ecx, [ebp + 0x18]
cmp byte [edi + 5], 0
jne 0x4b24c2
push 0x122
jmp 0x4b250e
push 0x123
jmp 0x4b250e
push 0x32b
jmp 0x4b250b
push 0x156
jmp 0x4b250b
push 0x146
jmp 0x4b250b
push 0x158
jmp 0x4b250b
push 0x15b
jmp 0x4b250b
push 0x15e
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push 0x160
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push 0x15f
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
mov eax, dword [ebp + 0x18]
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x19
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x1a
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.MSGType
call fcn.004050e0
mov byte [ebp - 4], 0x1b
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2564
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x1c
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b257e
lea edx, [esi + 8]
push edx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2593
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
mov eax, dword [edi + 8]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x1e
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x1f
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartDate
call fcn.004050e0
mov byte [ebp - 4], 0x20
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b25ec
lea eax, [esi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x21
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2606
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b261b
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
mov eax, dword [edi + 0xc]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x23
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x24
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartTime
call fcn.004050e0
mov byte [ebp - 4], 0x25
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2674
lea edx, [esi + 8]
push edx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x26
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b268e
lea eax, [esi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b26a3
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
mov eax, dword [edi + 0x18]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x28
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x29
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.PeerName
call fcn.004050e0
mov byte [ebp - 4], 0x2a
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b26fc
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x2b
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2716
lea edx, [esi + 8]
push edx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b272b
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
mov edi, dword [edi + 0x14]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push edi
call fcn.004050e0
mov byte [ebp - 4], 0x2d
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x2e
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.Message
call fcn.004050e0
mov byte [ebp - 4], 0x2f
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
mov edi, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
test esi, esi
je 0x4b2786
lea eax, [esi + 8]
push eax
call edi
mov byte [ebp - 4], 0x30
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b279c
lea ecx, [esi + 8]
push ecx
call edi
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b27b1
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
mov edx, dword [ebp + 0x14]
push edx
call fcn.004050e0
mov byte [ebp - 4], 0x32
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x33
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x53d4bc
call fcn.004050e0
mov byte [ebp - 4], 0x34
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2806
lea eax, [esi + 8]
push eax
call edi
mov byte [ebp - 4], 0x35
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b281c
add esi, 8
push esi
call edi
mov byte [ebp - 4], 0x36
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2831
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], bl
call fcn.0045b3e0
lea ecx, [ebp + 0xc]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0045a800
mov byte [ebp - 4], 0x37
mov esi, dword [ebp - 0x1c]
push esi
push 2
push 0x543e28
push 0
push 0x53d168
push 0
push 0x53d168
mov edi, dword [ebp + 0x10]
mov ecx, edi
call fcn.00458910
push 2
push 0x543e28
push 0
push 0x53d168
push 0
push 0x53d168
mov ecx, edi
call fcn.00458960
mov byte [ebp - 4], bl
test esi, esi
je 0x4b2897
mov edx, dword [esi]
push esi
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 4], 8
lea ecx, [ebp + 0x18]
call fcn.00401ac0
mov byte [ebp - 4], 7
lea ecx, [ebp + 8]
call fcn.00401ac0
mov byte [ebp - 4], 6
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x4b28c2
mov ecx, dword [eax]
push eax
mov edx, dword [ecx + 8]
call edx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x14]
call fcn.00406790
jmp 0x4b28d2
fstp st(0)
wait
mov dword [ebp - 4], 2
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x14]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4b2900
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
jmp 0x4b28da
mov byte [ebp - 4], 0x3a
wait
mov ecx, dword [edi + 0x28]
mov eax, dword [edi + 0x24]
push ecx
push eax
call fcn.004420e0
add esp, 8
fcom qword [esi + 8]
fnstsw ax
test ah, 0x41
jp 0x4b2fb8
fcomp qword [esi]
fnstsw ax
test ah, 1
jne 0x4b2fba
push 0x53d168
lea ecx, [ebp - 0x14]
call fcn.004050e0
mov byte [ebp - 4], 0x3b
mov dword [ebp + 0xc], 0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp + 8]
call fcn.00401a00
mov byte [ebp - 4], 0x3d
movzx eax, byte [edi + 0x1c]
dec eax
cmp eax, 7
ja case.default.0x4b2988
jmp dword [eax*4 + 0x4b3018]
push str.vkontakte
jmp 0x4b29cc
push str.facebook
jmp 0x4b29cc
push str.odnoklassniki
jmp 0x4b29cc
push str.twitter
jmp 0x4b29cc
push str.YouTube
jmp 0x4b29cc
push str.myspace
jmp 0x4b29cc
push str.linkedin
jmp 0x4b29cc
push str.moikrug
jmp 0x4b29cc
push 0x53ee40
lea ecx, [ebp + 8]
call fcn.0041afc0
push 0x17
push 0
push 0x53f894
lea ecx, [ebp + 0xc]
call fcn.004591d0
test eax, eax
jns 0x4b2a05
push str._attrs.CreateInstance___uuidof__MSXML2::SAXAttributes30__
push eax
lea ecx, [ebp - 0x4c]
call fcn.00412090
push 0x569810
lea ecx, [ebp - 0x4c]
push ecx
call fcn.004f08d9
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
mov edx, dword [ebp + 8]
push edx
call fcn.004050e0
mov byte [ebp - 4], 0x3e
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x3f
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.SNetwork
call fcn.004050e0
mov byte [ebp - 4], 0x40
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov esi, dword [ebp - 0x14]
mov dword [eax], esi
mov ebx, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
test esi, esi
je 0x4b2a5b
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x41
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2a71
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2a86
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x3d
call fcn.0045b3e0
mov eax, dword [edi + 0x24]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x43
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x44
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartGDate
call fcn.004050e0
mov byte [ebp - 4], 0x45
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2adc
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x46
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2af2
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2b07
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x3d
call fcn.0045b3e0
mov eax, dword [edi + 0x28]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x48
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x49
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartGTime
call fcn.004050e0
mov byte [ebp - 4], 0x4a
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2b5d
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x4b
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2b73
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x4c
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2b88
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x3d
call fcn.0045b3e0
lea ecx, [ebp + 0x18]
call fcn.00401a00
mov byte [ebp - 4], 0x4d
movzx eax, byte [edi + 4]
dec eax
cmp eax, 8
ja case.default.0x4b2ba7
jmp dword [eax*4 + 0x4b3038]
lea ecx, [ebp + 0x18]
cmp byte [edi + 5], 0
jne 0x4b2bbe
push 0x122
jmp 0x4b2c0a
push 0x123
jmp 0x4b2c0a
push 0x32b
jmp 0x4b2c07
push 0x156
jmp 0x4b2c07
push 0x146
jmp 0x4b2c07
push 0x158
jmp 0x4b2c07
push 0x15b
jmp 0x4b2c07
push 0x15e
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push 0x160
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push 0x15f
lea ecx, [ebp + 0x18]
call fcn.00406ae0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
mov eax, dword [ebp + 0x18]
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x4e
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x4f
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.MSGType
call fcn.004050e0
mov byte [ebp - 4], 0x50
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2c5c
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x51
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2c72
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x52
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2c87
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
mov eax, dword [edi + 8]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x53
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x54
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartDate
call fcn.004050e0
mov byte [ebp - 4], 0x55
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2cdd
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x56
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2cf3
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x57
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2d08
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
mov eax, dword [edi + 0xc]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x58
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x59
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.StartTime
call fcn.004050e0
mov byte [ebp - 4], 0x5a
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2d5e
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x5b
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2d74
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x5c
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2d89
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
mov eax, dword [edi + 0x18]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.004050e0
mov byte [ebp - 4], 0x5d
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x5e
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.PeerName
call fcn.004050e0
mov byte [ebp - 4], 0x5f
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2ddf
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x60
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2df5
lea edx, [esi + 8]
push edx
call ebx
mov byte [ebp - 4], 0x61
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2e0a
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
mov edi, dword [edi + 0x14]
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push edi
call fcn.004050e0
mov byte [ebp - 4], 0x62
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x63
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.Message
call fcn.004050e0
mov byte [ebp - 4], 0x64
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2e60
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x65
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2e76
lea ecx, [esi + 8]
push ecx
call ebx
mov byte [ebp - 4], 0x66
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2e8b
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
mov edx, dword [ebp + 0x14]
push edx
call fcn.004050e0
mov byte [ebp - 4], 0x67
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.CDATA
call fcn.00405050
mov byte [ebp - 4], 0x68
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x53d4bc
call fcn.004050e0
mov byte [ebp - 4], 0x69
push ecx
mov dword [ebp - 0x20], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2ee1
lea eax, [esi + 8]
push eax
call ebx
mov byte [ebp - 4], 0x6a
push ecx
mov dword [ebp - 0x1c], esp
mov eax, esp
mov dword [eax], esi
test esi, esi
je 0x4b2ef7
add esi, 8
push esi
call ebx
mov byte [ebp - 4], 0x6b
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x4b2f0c
push 0x80004003
call fcn.004ef9b0
mov byte [ebp - 4], 0x4d
call fcn.0045b3e0
lea ecx, [ebp + 0xc]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0045a800
mov byte [ebp - 4], 0x6c
mov esi, dword [ebp - 0x1c]
push esi
push 2
push 0x543e28
push 0
push 0x53d168
push 0
push 0x53d168
mov edi, dword [ebp + 0x10]
mov ecx, edi
call fcn.00458910
push 2
push 0x543e28
push 0
push 0x53d168
push 0
push 0x53d168
mov ecx, edi
call fcn.00458960
mov byte [ebp - 4], 0x4d
test esi, esi
je 0x4b2f74
mov edx, dword [esi]
push esi
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 4], 0x3d
lea ecx, [ebp + 0x18]
call fcn.00401ac0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp + 8]
call fcn.00401ac0
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x4b2f9f
mov ecx, dword [eax]
push eax
mov edx, dword [ecx + 8]
call edx
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x14]
call fcn.00406790
wait
mov dword [ebp - 4], 2
jmp 0x4b28da
fstp st(0)
wait
mov dword [ebp - 4], 2
jmp 0x4b28da