Function at 0x402d00
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5448b1
mov eax, dword fs:[0]
push eax
sub esp, 0x338
mov eax, dword [0x5960c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x335]
mov esi, ecx
push eax
mov dword [ebp - 0x334], esi
call fcn.00406490
lea edi, [ebp - 0x33c]
call fcn.0040c3a0
xor ebx, ebx
push 0x104
lea ecx, [ebp - 0x330]
push ebx
push ecx
mov dword [ebp - 4], ebx
call fcn.00521f30
add esp, 0xc
lea ecx, [ebp - 0x330]
call fcn.0040c910
lea eax, [ebp - 0x330]
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x402d80
mov edx, dword [str.Options.ini]
mov ecx, dword [0x5717a0]
mov dword [eax], edx
mov edx, dword [0x5717a4]
mov dword [eax + 4], ecx
push 0x200
mov dword [eax + 8], edx
lea eax, [ebp - 0x210]
push ebx
push eax
call fcn.00521f30
mov esi, dword [esi]
push 8
call fcn.0041afbc
add esp, 0x10
mov dword [eax + 4], ebx
mov dword [eax], ebx
cmp esi, ebx
je 0x402dcc
mov dword [eax + 4], esi
push ebx
push ebx
push ebx
push ebx
push eax
push 0x408150
call fcn.00427e18
mov ebx, str.CheckVerUpdate
mov edi, str.Check_all
lea esi, [ebp - 0x33c]
call fcn.0040c630
mov esi, dword [ebp - 0x334]
mov ecx, dword [esi]
push ecx
lea ecx, [ebp - 0x210]
call fcn.004075e0
push 0x200
xor ebx, ebx
lea edx, [ebp - 0x210]
push ebx
push edx
call fcn.00521f30
mov ecx, dword [esi]
add esp, 0xc
lea edx, [ebp - 0x210]
call fcn.00406770
push 0x200
lea eax, [ebp - 0x210]
push ebx
push eax
call fcn.00521f30
mov ecx, dword [esi]
add esp, 0xc
push ecx
lea ecx, [ebp - 0x210]
call fcn.00409190
mov ecx, 0x5a0fc4
call fcn.004086b0
mov edi, dword [esi]
push 0x18c
push ebx
test eax, eax
je 0x402e87
lea edx, [ebp - 0x19c]
push edx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x14], ebx
cmp edi, ebx
je 0x402ec0
lea eax, [ebp - 0x19c]
push eax
jmp 0x402eaf
lea ecx, [ebp - 0x19c]
push ecx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x14], 1
cmp edi, ebx
je 0x402ec0
lea edx, [ebp - 0x19c]
push edx
push 0x8907
push 0x8907
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, 0x5a0fb0
call fcn.004086b0
mov edi, dword [esi]
push 0x18c
push ebx
test eax, eax
je 0x402f0f
lea eax, [ebp - 0x19c]
push eax
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x14], ebx
cmp edi, ebx
je 0x402f39
lea ecx, [ebp - 0x19c]
push ecx
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push 0x8907
push 0x8907
push edi
call ebx
jmp 0x402f3f
lea edx, [ebp - 0x19c]
push edx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x14], 1
cmp edi, ebx
je 0x402f39
lea eax, [ebp - 0x19c]
push eax
jmp 0x402efa
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, 0x5a1014
call fcn.004086b0
mov edi, dword [esi]
push 0x18c
push 0
test eax, eax
je 0x402f80
lea ecx, [ebp - 0x19c]
push ecx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x14], 0
test edi, edi
je 0x402fb5
lea edx, [ebp - 0x19c]
push edx
jmp 0x402fa8
lea eax, [ebp - 0x19c]
push eax
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x14], 1
test edi, edi
je 0x402fb5
lea ecx, [ebp - 0x19c]
push ecx
push 0x8907
push 0x8907
push edi
call ebx
lea edx, [ebp - 0x330]
push edx
call fcn.0040d110
test eax, eax
jne 0x403160
sub esp, 0x1c
mov esi, esp
mov ebx, 0xf
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], ebx
mov byte [esi], al
lea edi, [eax + 0xe]
mov eax, str.DisplayVersion
mov dword [ebp - 0x344], esp
call fcn.00405480
sub esp, 0x1c
mov esi, esp
mov byte [ebp - 4], 1
mov dword [esi + 0x14], ebx
mov dword [esi + 0x10], 0
lea edi, [ebx + 5]
mov eax, str.iBBECtl_for_IBKChina
mov dword [ebp - 0x340], esp
mov byte [esi], 0
call fcn.00405480
lea ebx, [ebp - 0x22c]
mov byte [ebp - 4], 0
call fcn.00410430
add esp, 0x38
mov esi, dword [eax + 0x10]
mov ecx, esi
cmp ecx, esi
jae 0x403032
cmp dword [eax + 0x14], 0x10
jb 0x40303c
mov edx, dword [eax]
jmp 0x40303e
mov edx, eax
xor eax, eax
mov ecx, 0x5722cf
call fcn.00404da0
xor edi, edi
cmp eax, edi
jne 0x403059
xor eax, eax
cmp esi, edi
setne al
cmp eax, edi
sete bl
mov byte [ebp - 4], 0
cmp dword [ebp - 0x218], 0x10
jb 0x403078
mov eax, dword [ebp - 0x22c]
push eax
call fcn.0041aff6
add esp, 4
mov ecx, dword [ebp - 0x334]
mov esi, dword [ecx]
push 0x18c
lea edx, [ebp - 0x19c]
push edi
push edx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x14], edi
test bl, bl
jne 0x4030aa
mov dword [ebp - 0x14], 1
cmp esi, edi
je 0x4030c6
lea eax, [ebp - 0x19c]
push eax
push 0x8907
push 0x8907
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [0x5a1000]
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x10], edi
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [ebp - 0x340], esp
mov byte [esi], 0
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4030e8
sub ecx, edi
mov edi, ecx
call fcn.00405480
call fcn.0040fe90
mov ecx, dword [ebp - 0x334]
mov esi, dword [ecx]
add esp, 0x1c
push 0x18c
lea edx, [ebp - 0x19c]
push 0
push edx
test al, al
jne 0x403128
call fcn.00521f30
mov dword [ebp - 0x14], 0
jmp 0x403134
call fcn.00521f30
mov dword [ebp - 0x14], 1
add esp, 0xc
mov dword [ebp - 0x18], 8
test esi, esi
je 0x40315a
lea eax, [ebp - 0x19c]
push eax
push 0x8907
push 0x8907
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
mov esi, dword [ebp - 0x334]
call fcn.004082e0
mov edi, dword [esi]
push 0x18c
push 0
test eax, eax
je 0x4031ad
lea ecx, [ebp - 0x19c]
push ecx
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 9
mov dword [ebp - 0x14], 0
test edi, edi
je 0x4031eb
lea edx, [ebp - 0x19c]
push edx
push 0x8907
push 0x8907
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x4031eb
lea eax, [ebp - 0x19c]
push eax
call fcn.00521f30
add esp, 0xc
mov dword [ebp - 0x18], 9
mov dword [ebp - 0x14], 1
test edi, edi
je 0x4031e6
lea ecx, [ebp - 0x19c]
push ecx
push 0x8907
push 0x8907
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
call fcn.004070e0
mov ecx, dword [esi]
call fcn.00406e20
call fcn.00410150
push 0
push 0
push esi
push 0x404020
push 0
push 0
call fcn.0051b7d6
mov eax, dword [ebp - 0x33c]
add esp, 0x18
test eax, eax
je 0x403220
push eax
call fcn.0051c5c1
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051ac68
mov esp, ebp
pop ebp
ret