Function at 0x402af0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x442045
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x459bdc]
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
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x30], ebx
mov ecx, dword [0x45aa64]
mov eax, dword [0x45a9d0]
nop
cmp dword [0x45e1ac], 0
jne 0x402b3f
mov dl, byte [ecx]
test dl, dl
jne 0x402b72
mov dword [0x45e1ac], 0
cmp eax, edi
jge 0x402c55
mov ecx, dword [ebx + eax*4]
mov dl, byte [ecx]
cmp dl, 0x2d
jne 0x402c55
cmp byte [ecx + 1], 0
je 0x402b72
mov dl, byte [ecx + 1]
inc ecx
cmp dl, 0x2d
je 0x402c4f
movsx edx, dl
inc ecx
mov dword [0x45e19c], edx
mov dword [0x45aa64], ecx
cmp edx, 0x3a
je 0x402ca7
push edx
push str.u:p:
call fcn.00424060
add esp, 8
test eax, eax
je 0x402c96
cmp byte [eax + 1], 0x3a
mov eax, dword [0x45a9d0]
je 0x402bc0
mov ecx, dword [0x45aa64]
xor edx, edx
mov dword [0x45e1b8], edx
cmp byte [ecx], dl
je 0x402bed
jmp 0x402bf3
mov edx, dword [0x45aa64]
cmp byte [edx], 0
jne 0x402bdc
inc eax
mov dword [0x45a9d0], eax
cmp edi, eax
jle 0x402c8a
mov edx, dword [ebx + eax*4]
mov ecx, 0x451e7b
mov dword [0x45e1b8], edx
mov dword [0x45aa64], ecx
inc eax
mov dword [0x45a9d0], eax
mov esi, dword [0x45e19c]
cmp esi, 0xffffffff
je 0x402c5f
cmp esi, 0x3f
je 0x402c66
cmp esi, 0x70
je 0x402c30
cmp esi, 0x75
jne 0x402b30
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402c16
sub ecx, esi
push ecx
mov ecx, 0x45aa4c
push edx
call fcn.00405420
jmp 0x402b24
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402c35
sub ecx, esi
push ecx
mov ecx, 0x45aa34
push edx
call fcn.00405420
jmp 0x402b24
inc eax
mov dword [0x45a9d0], eax
mov dword [0x45aa64], 0x451e7b
sub edi, eax
cmp edi, 2
je 0x402cb9
call fcn.00402aa0
or eax, 0xffffffff
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.0040cfd1
mov esp, ebp
pop ebp
ret
mov dword [0x45aa64], 0x451e7b
jmp 0x402c66
mov eax, dword [0x45a9d0]
mov ecx, dword [0x45aa64]
mov edx, dword [0x45e19c]
cmp edx, 0x2d
je 0x402c5f
cmp byte [ecx], 0
jne 0x402c66
inc eax
mov dword [0x45a9d0], eax
jmp 0x402c66
mov ecx, dword [ebp - 0x30]
mov edx, 1
mov ebx, dword [ebx + eax*4]
mov dword [ebp - 0x14], ebx
mov dword [0x45e1a0], edx
mov ecx, dword [ecx + eax*4 + 4]
mov al, byte [ecx]
test al, al
je 0x402cea
cmp al, 0x2c
jne 0x402cdc
inc edx
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x402cd7
mov dword [0x45e1a0], edx
xor ecx, ecx
mov eax, edx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0042a5da
mov esi, eax
add esp, 4
xor eax, eax
mov dword [0x45e198], esi
xor edi, edi
cmp dword [0x45e1a0], eax
jbe 0x402d50
mov ebx, dword [ebp - 0x30]
nop dword [eax]
test eax, eax
jne 0x402d2f
mov eax, dword [0x45a9d0]
mov eax, dword [ebx + eax*4 + 4]
jmp 0x402d31
xor eax, eax
push 0x451fec
push eax
call fcn.00427cbf
mov dword [esi], eax
inc edi
add esp, 8
add esi, 4
cmp edi, dword [0x45e1a0]
jb 0x402d20
mov ebx, dword [ebp - 0x14]
push 0x451ff0
push ebx
call fcn.00423df0
add esp, 8
test eax, eax
jne 0x402d7a
mov edx, str.invalid_address_format
call fcn.004055e0
push eax
call fcn.004058a0
add esp, 4
jmp 0x402c6b
push 0
push 0
push 0x451e7b
call dword [sym.imp.thostmduserapi_se.dll_public:_static_class_CThostFtdcMdApi____cdecl_CThostFtdcMdApi::CreateFtdcMdApi_char_const___bool__bool_]
mov esi, eax
mov dword [ebp - 0x1c], 0x4520f0
add esp, 0xc
mov dword [ebp - 0x18], esi
lea eax, [ebp - 0x1c]
mov ecx, esi
mov edx, dword [esi]
push eax
call dword [edx + 0x1c]
mov edx, dword [esi]
mov ecx, esi
push ebx
call dword [edx + 0x10]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0
cmp eax, dword [0x45e1c4]
je 0x402de8
mov dword [eax], 0
add dword [0x45e1c0], 4
jmp 0x402df2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 1
push eax
call fcn.00405090
mov byte [eax], 0
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 1
cmp eax, dword [0x45e1c4]
je 0x402e28
mov dword [eax], 1
add dword [0x45e1c0], 4
jmp 0x402e32
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 2
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 2
cmp eax, dword [0x45e1c4]
je 0x402e68
mov dword [eax], 2
add dword [0x45e1c0], 4
jmp 0x402e72
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 3
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 3
cmp eax, dword [0x45e1c4]
je 0x402ea8
mov dword [eax], 3
add dword [0x45e1c0], 4
jmp 0x402eb2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 4
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 4
cmp eax, dword [0x45e1c4]
je 0x402ee8
mov dword [eax], 4
add dword [0x45e1c0], 4
jmp 0x402ef2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 5
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 5
cmp eax, dword [0x45e1c4]
je 0x402f28
mov dword [eax], 5
add dword [0x45e1c0], 4
jmp 0x402f32
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xa
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xa
cmp eax, dword [0x45e1c4]
je 0x402f68
mov dword [eax], 0xa
add dword [0x45e1c0], 4
jmp 0x402f72
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xb
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xb
cmp eax, dword [0x45e1c4]
je 0x402fa8
mov dword [eax], 0xb
add dword [0x45e1c0], 4
jmp 0x402fb2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xc
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xc
cmp eax, dword [0x45e1c4]
je 0x402fe8
mov dword [eax], 0xc
add dword [0x45e1c0], 4
jmp 0x402ff2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xd
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xd
cmp eax, dword [0x45e1c4]
je 0x403028
mov dword [eax], 0xd
add dword [0x45e1c0], 4
jmp 0x403032
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xe
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xe
cmp eax, dword [0x45e1c4]
je 0x403068
mov dword [eax], 0xe
add dword [0x45e1c0], 4
jmp 0x403072
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 6
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 6
cmp eax, dword [0x45e1c4]
je 0x4030a8
mov dword [eax], 6
add dword [0x45e1c0], 4
jmp 0x4030b2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 7
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 7
cmp eax, dword [0x45e1c4]
je 0x4030e8
mov dword [eax], 7
add dword [0x45e1c0], 4
jmp 0x4030f2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 8
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 8
cmp eax, dword [0x45e1c4]
je 0x403128
mov dword [eax], 8
add dword [0x45e1c0], 4
jmp 0x403132
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 9
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 9
cmp eax, dword [0x45e1c4]
je 0x403168
mov dword [eax], 9
add dword [0x45e1c0], 4
jmp 0x403172
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x14
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x14
cmp eax, dword [0x45e1c4]
je 0x4031a8
mov dword [eax], 0x14
add dword [0x45e1c0], 4
jmp 0x4031b2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x15
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x15
cmp eax, dword [0x45e1c4]
je 0x4031e8
mov dword [eax], 0x15
add dword [0x45e1c0], 4
jmp 0x4031f2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x13
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x13
cmp eax, dword [0x45e1c4]
je 0x403228
mov dword [eax], 0x13
add dword [0x45e1c0], 4
jmp 0x403232
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x10
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x10
cmp eax, dword [0x45e1c4]
je 0x403268
mov dword [eax], 0x10
add dword [0x45e1c0], 4
jmp 0x403272
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x11
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x11
cmp eax, dword [0x45e1c4]
je 0x4032a8
mov dword [eax], 0x11
add dword [0x45e1c0], 4
jmp 0x4032b2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x12
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x12
cmp eax, dword [0x45e1c4]
je 0x4032e8
mov dword [eax], 0x12
add dword [0x45e1c0], 4
jmp 0x4032f2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0xf
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0xf
cmp eax, dword [0x45e1c4]
je 0x403328
mov dword [eax], 0xf
add dword [0x45e1c0], 4
jmp 0x403332
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x16
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x16
cmp eax, dword [0x45e1c4]
je 0x403368
mov dword [eax], 0x16
add dword [0x45e1c0], 4
jmp 0x403372
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x17
push eax
call fcn.00405090
mov byte [eax], 1
mov eax, dword [0x45e1c0]
mov dword [ebp - 0x14], 0x17
cmp eax, dword [0x45e1c4]
je 0x4033a8
mov dword [eax], 0x17
add dword [0x45e1c0], 4
jmp 0x4033b2
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.00405a20
push 4
call fcn.0040cfe7
mov dword [ebp - 0x14], eax
mov dword [eax], 0x404c50
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0
push ecx
push 0
push eax
push 0x406aa0
push 0
push 0
call fcn.00427e39
add esp, 0x1c
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x4034b7
push 4
mov dword [ebp - 4], 1
call fcn.0040cfe7
mov dword [ebp - 0x14], eax
mov dword [eax], 0x404db0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
push ecx
push 0
push eax
push 0x406aa0
push 0
push 0
call fcn.00427e39
add esp, 0x1c
mov dword [ebp - 0x24], eax
test eax, eax
je 0x4034c5
mov byte [ebp - 4], 3
mov esi, 0x1c
call fcn.0042805e
mov edx, eax
cmp edx, 0xe0
jne 0x40347f
call fcn.0042805e
mov edx, eax
lea eax, [edx - 0xc]
cmp eax, 0x44
ja case.0x403458.13
movzx ecx, byte [eax + 0x4034ec]
jmp dword [ecx*4 + 0x4034d4]
mov edx, 0x15
jmp case.0x403458.13
mov edx, 0x14
jmp case.0x403458.13
mov edx, 0x13
jmp case.0x403458.13
mov edx, 0x16
jmp case.0x403458.13
mov edx, esi
jmp case.0x403458.13
test edx, edx
jne 0x40348c
call fcn.0042805e
mov edx, eax
jmp case.0x403458.13
cmp edx, 0xc
cmove edx, esi
sub esp, 0x28
mov eax, esp
mov dword [eax], vtable.std::_Func_impl_no_alloc_class_std::_Binder_struct_std::_Unforced__int____cdecl___int___int____void___.0
mov dword [eax + 4], 0x404f80
mov dword [eax + 8], edx
mov dword [eax + 0x24], eax
call fcn.00403540
add esp, 0x28
jmp 0x403433
push 6
mov dword [ebp - 0x28], 0
call fcn.0040a541
push 6
mov dword [ebp - 0x20], 0
call fcn.0040a541
nop
jnp 0x40350a
inc eax
add byte [ebp + 0x34], ch
inc eax
add byte [edi + 0x34], bl
inc eax
add byte [esp + esi + 0x40], dh
add byte [esi + 0x34], ah
inc eax
add byte [edx + 0x4034], dl
add eax, 0x5050505
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 17106181
add eax, 50659845
add eax, 0x5050505
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add dword [50659845], eax
add eax, 0xcccc0405
int3